我需要访问我在 docker 之外创建的 MySQL 数据库,但出现错误如何访问我的数据库?panic: failed to connect databasegoroutine 1 [running]:main.init.0() /go/src/app/src/main.go:33 +0x12c
2 回答

慕森王
TA贡献1777条经验 获得超3个赞
我不确定当前推荐的方法是什么,但这是过去在不同操作系统上对我有用的方法:
OSX:将 mysql 主机设置为docker.for.mac.localhost
Windows:将 mysql 主机设置为host.docker.internal
(这也适用于 OSX)
Linux:将 mysql 主机设置为 172.17.0.1
.
根据您安装 mysql 的方式,您可能需要找到它的my.cnf
配置并将bind_address
值更改为0.0.0.0
.

神不在的星期二
TA贡献1963条经验 获得超6个赞
一种方法是,获取数据库的 mysql 转储并将该文件复制到具有$HOME/docker/volumes/mysql
主机路径的目录中,并使用--volume
标志将其映射到 docker 容器。
通过执行以下命令获取数据库的转储:(
mysqldump -u root -proot dnName > dbName.dat.sql
将 dbName 替换为您的数据库名称)。创建一个 Mysql docker 容器并使用卷标志将文件从主机映射到容器,同时执行 docker tun 命令:
-v $HOME/docker/volumes/mysql:/var/lib/mysql
.将该 dumo 导入容器的 mysql 。
mysql -u root -proot dbName < dbName.dat.sql
.
- 2 回答
- 0 关注
- 326 浏览
添加回答
举报
0/150
提交
取消