MySQL在docker-compose中 - 访问被拒绝
问题描述:
我尝试启动MySQL
服务器,并使用docker-compose
。这里是docker-compose.yaml
部分:MySQL在docker-compose中 - 访问被拒绝
mysql:
restart: always
image: mysql:latest
ports:
- "3306:3306"
volumes:
- /Users/user/Documents/.docker/mysql/config:/etc/mysql/
- /Users/user/Documents/.docker/mysql/data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD='123'
- MYSQL_ROOT_HOST='172.18.0.1'
你看我指定root密码和主机,因为它是说here。然后我尝试连接(使用IntelliJ IDEA的,如果该事项),以DB:
jdbc:mysql://localhost:3306/?user=root&password=123&ssl=false
但它不接受全权证书,并写入日志:
Access denied for user 'root'@'172.18.0.1' (using password: YES)
请就如何解决它建议。谢谢。
答
很有可能你已初始化MySQL数据目录时,这些是不同的:当启动一个在/ var/lib中/ MySQL的从头目录
environment:
- MYSQL_ROOT_PASSWORD='123'
- MYSQL_ROOT_HOST='172.18.0.1'
MySQL的图像只能尊重那瓦尔。
因此,如果您不关心数据,请清空您的卷:/Users/user/Documents/.docker/mysql/data
或手动从mysql终端更改凭据。
+0
谢谢你,你是对的,那些不是初始设置。清除持久性目录帮助。 – awfun
为您的用户授予从本地主机连接的权限。 – FMashiro
你的意思是root用户无法从本地主机连接? – awfun
是的,根用户目前只有权限连接@'172.18.0.1'而不是从本地主机连接,据我所见 – FMashiro