mysql - 如何运行 Docker 的容器来访问 MySQL 数据库

标签 mysql docker

我需要旧版本的 Mysql Server:5.1.73

我想在容器内使用它,但我找不到图像,因为第一个可用版本是 5.5。所以我决定安装一个CentOS 6镜像,然后使用yum安装Mysql 5.1.73。

最后,我根据我的需要安装并配置了一个包含 CentOS 6 和 Mysql 的容器。在此步骤中,我提交镜像以运行容器。

我尝试以下命令:

docker run -p 3307:3306 --name test-mysql --mount source=databases-vol,target=/databases -d centos6-mysql

但是当我尝试连接到我的数据库时,我收到如下错误消息:

MySQL said: Host '172.17.0.1' is not allowed to connect to this MySQL server

我错过了什么?

最佳答案

默认情况下..mysql不允许来自远程主机的连接(即使你有docker容器,你的机器是远程主机)

这可能有效..

登录 docker 并授予远程访问权限..

$ docker exec -it mysql_singstep bash
# mysql -h localhost -u root -p

https://medium.com/@gchandra/install-mysql-8-using-docker-easily-10091d575441

关于mysql - 如何运行 Docker 的容器来访问 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56011860/

相关文章:

c# - MySQL 连接字符串 C#

docker - 为什么dockered centos无法识别 pip ?

wordpress - 无法将AWS Elastic Beanstalk与Docker一起使用来部署Wordpress

docker - 如何在docker容器中使用cron

amazon-web-services - 如何在AWS CodeBuild中创建Windows Docker镜像

node.js - 使用 docker-compose 时, Node 应用程序无法连接到 Redis

python - 通过Python从MySQL批量获取数据

php - 有关如何继续验证注册用户和更新 mySQL 的代码的帮助

php - 迭代数组/ HashMap

php - 使用php获取具有相同id的多个数据