우당탕탕 개발일지
[MySQL] Docker 에서 Access denied for user 'root'@'%' to ... 에러 본문
일반적으로 root@localhost 에게는 mysql에 대해 모든 권한 이있지만, Docker에서 원격으로 db에 접속하게 될 경우 root@접속한 ip 로 접속하게된다.
그런데 이에대한 접근권한이 주어지지 않았을 경우 access denied 가 발생한다.
이럴땐 docker container 안에 직접 들어가서 (localhost , 권한이 있는 계정으로 )모든 권한을 부여하고 나오면 된다.
#여기는 host
docker exec -it <conatinerName> /bin/bash #cotainer 실행
#container에 들어왔음. mysql 에 접속
mysql -uroot -p #mysql 에 접속
#mysql 상에서 모든 계정에 권한을 부여
GRANT ALL PRIVILEGES on *.* TO 'root'@'%' WITH GRANT OPTION;
#밖으로나옴.
exit
이제 다시 container 밖에서 mysql 에 접속할 경우 외부 계정으로 작업할 수 있다
'Database' 카테고리의 다른 글
[MySQL] Master-Slave Replication (0) | 2023.07.13 |
---|---|
[MySQL] docker 에서 MySQL 사용하기 (생성에서 매핑까지) (0) | 2023.07.07 |