问题:
您已在 Docker 中设置 MYSQL_ROOT_PASSWORD docker-compose.yml 文件,但当您尝试连接到 MySQL 数据库时,您会收到错误“用户 'root'@'localhost' 的访问被拒绝(使用密码:YES)。”
原因:
最可能的原因是您正在针对已包含 MySQL 数据库文件系统的现有卷启动 MySQL 容器。在这种情况下,包括 MYSQL_ROOT_PASSWORD 在内的任何环境变量都不会产生任何影响。
解决方案:
要从头开始并初始化容器,您需要删除现有数据卷并使用新数据卷启动容器。这将清除数据卷中以前的所有数据库,因此请确保在必要时创建备份。
步骤:
其他信息:
此问题不仅限于 MySQL docker 映像。许多数据库的官方 docker 镜像(例如 PostgreSQL、MongoDB)都以类似的方式工作。因此,如果您在其他数据库中遇到此问题,删除数据卷并从头开始启动容器的解决方法可能会适用。
以上是尽管设置了'MYSQL_ROOT_PASSWORD”,为什么我的 MySQL Docker 容器仍显示'访问被拒绝”?的详细内容。更多信息请关注PHP中文网其他相关文章!