티스토리 뷰
MySQL 원격 접속 / ERROR 1410 (42000): You are not allowed to create a user with GRANT
개소왕 2018. 5. 9. 16:46* 개요
MySQL 은 기본저긍로 local에서만 접속 하도록 설정되어 있음.
- 외부에서 접속하려면 해당 IP 원격접속 허용해줘야 함.
- 만약 안되어 있다면 다음 오류 발생
ERROR 1045 (28000): Access denied for user
- 다음 사항을 확인해야...
1. 유저생성 (CREATE USER ...)
2. 접근 권한 지정 (GRANT ...)
3. 변경된 권한 적용 (FLUSH ...)
4. MySQL 설정에 외부 접근 허용 (bind-address....)
5. 방화벽 해제
#MySQL 외부접근
* 환경
MySQL 8
Win7
* 문제 해결
- (외부에서 root로 접속한다고 가정) root의 허용 IP 를 바꿔줌.
- % 는 전체
- 192.123.111.% 형태도 가능
CREATE USER 'root'@'%' IDENTIFIED BY 'pass';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;
- 참고 : https://zetawiki.com/wiki/MySQL_%EC%9B%90%EA%B2%A9_%EC%A0%91%EC%86%8D_%ED%97%88%EC%9A%A9
- 원문에선 INSERT INTO USER... 하게 되어있으나,
MYSQL 8에선 PASSWORD() 함수 안먹힘 (??)
- 방화벽 해제해야 함
* 변경 여부 확인
SELECT HOST, USER, AUTHENTICATION_STRING FROM MYSQL.USER;
root 의 접근 범위가 바뀌는게 아니고 추가된다.
host = localhost 인 행과 %인 행 2개가 보임
* 오류 ERROR 1410 (42000): You are not allowed to create a user with GRANT
- 위의 CREATE USER root... 먼저 해줘야 함..
CREATE USER 'root'@'%' IDENTIFIED BY 'pass';
참고
https://stackoverflow.com/questions/50177216/how-to-grant-all-privileges-to-root-user-in-mysql-8-0
" MySQL 8 부터 GRANT 로 사용자 추가할 수 없다 "
* 외부 접속 성공했으나 스키마나 테이블 보이지 않는 경우
= > GRANT 안 했을 가능성
* ERROR 1045 (28000) : Access denied for user 'root'@....
- 패스워드 틀린 경우 ... IDENTIFIED BY 패스워드 입력된 것 다시 확인.
- 설정에 따라 같은 계정이라도 외부접속과 로컬 접속의 패스워드가 다를 수 있음.
- my.ini 에 bind-address=127.0.0.1 로 지정된 경우
이 경우 로컬에서만 접근 가능함 .. 지워줘야..
안하면 Can't connect to mysql(10061) 오류
* Can't connect to mysql(10061) / 우분투의 경우
- telnet 192.168.0.X 3306
으로 테스트 하는 경우
.... '연결하지 못했습니다'
/etc/mysql/my.cnf 에
bind-address=127.0.0.1 를 주석처리
- my.cnf에 해당 내용 없는경우 파일 내용중에
!includedir /etc/mysql/mysql.conf.d/
내용 있는지 확인..
있다면 해당 디렉토리의 파일들을 설정파일로 쓰고 있는 것이므로 들어가서 설정파일 고침.
- 고친후 재시작
sudo service mysql stop
sudo service mysql start
'SW개발 > Database' 카테고리의 다른 글
SQL Error: 0, SQLState: 08S01 Communications link failure / (0) | 2018.05.10 |
---|---|
MySQL start job failed to start (0) | 2018.05.10 |
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061) (0) | 2018.05.01 |
Win 7 / MySQL 8.0 설치 api-ms-win-crt-runtime-l1-1-10.dll (0) | 2018.05.01 |
ubuntu 14.04 / mariaDB 설치 (실패) (1) | 2018.05.01 |