docker-compose中的MySQL – 访问被拒绝

我尝试用docker-compose启动MySQL服务器。 这里是docker-compose.yaml部分:

  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密码和主机,就像这里所说的那样。 然后我尝试连接到数据库(使用Intellij Idea如果重要):

 jdbc:mysql://localhost:3306/?user=root&password=123&ssl=false 

但它不接受凭据并写入日志:

 Access denied for user 'root'@'172.18.0.1' (using password: YES) 

请告知如何解决它。 谢谢。

很可能你已经初始化了mysql数据目录时,这些是不同的:

 environment: - MYSQL_ROOT_PASSWORD='123' - MYSQL_ROOT_HOST='172.18.0.1' 

MySQL映像只在从头开始/ var / lib / mysql目录时才会使用这些variables。

因此,如果您不介意数据,请清空您的卷: /Users/user/Documents/.docker/mysql/data ,或者从mysqlterminal手动更改凭据。

Interesting Posts