我尝试使用MySQL
启动docker-compose
服务器。这是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密码和主机,因为它是here。然后我尝试连接到db(如果重要的话,使用Intellij Idea):
jdbc:mysql://localhost:3306/?user=root&password=123&ssl=false
但它不接受凭据并写入日志:
Access denied for user 'root'@'172.18.0.1' (using password: YES)
请告知如何解决它。感谢。
答案 0 :(得分:6)
当这些目录不同时,你很可能已经初始化了mysql数据目录:
environment:
- MYSQL_ROOT_PASSWORD='123'
- MYSQL_ROOT_HOST='172.18.0.1'
从头开始创建/ var / lib / mysql目录时,MySQL映像仅尊重这些变量。
因此,如果您不关心数据,请清空卷:/Users/user/Documents/.docker/mysql/data
,或从mysql终端手动更改凭据。