为了账号安全,请及时绑定邮箱和手机立即绑定

使用 mysqldriver 连接到数据库时出错

使用 mysqldriver 连接到数据库时出错

Go
慕尼黑5688855 2021-08-10 13:24:58
我试图按照这里的说明https://github.com/go-sql-driver/mysql#installation和http://go-database-sql.org/accessing.html创建一个 sql.db。我的代码的第一行有这个db, err := sql.Open("mysql", "username@localhost/my_db")当我在终端上运行程序时,我得到了这个:Default addr for network ''localhost'' unknown为什么是这样?当我检查用户和主机到 mysql 时,它指出“用户名”和“本地主机”。我遵循这样的参数:[username[:password]@][protocol[(address)]]/dbname[?param1=value1&...&paramN=valueN]
查看完整描述

3 回答

?
www说

TA贡献1775条经验 获得超8个赞

您可能想要指定协议(如“ tcp”),而不是localhost直接指定。
请参阅这些示例

user:password@tcp(localhost:5555)/dbname

在你的情况下:

username@tcp(localhost)/my_db

请注意,如果您使用默认协议 ( tcp) 和主机 ( localhost:3306),则可以将其重写为

user:password@/dbname


查看完整回答
反对 回复 2021-08-10
?
月关宝盒

TA贡献1772条经验 获得超5个赞

我遇到了同样的问题,投票最多的答案对我没有帮助。救了我的是(host:port)在引号中 -->"(host:port)"


查看完整回答
反对 回复 2021-08-10
?
湖上湖

TA贡献2003条经验 获得超2个赞

我在 Linux VM 上运行 Docker 容器时遇到了类似的问题。在我的应用程序 ( server.go) 中,我更改了 localhost 值以使用我的虚拟机的 IP,然后成功构建并运行容器。

mysql container (3307) <--> [(application mysql:<vm ip>:3307) container](expose 3000) <-->  world


查看完整回答
反对 回复 2021-08-10
  • 3 回答
  • 0 关注
  • 250 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信