我的数据库链接是域名而不是IP地址,并且我不使用IP地址。下面是我的配置。
orm.RegisterDataBase("default", "mysql", "root:root@*******.aliyuncs.com:3308/dbname?charset=utf8")
错误信息:
注册数据库Ping
的寄存器数据库别名default
,网络'***。mysql.rds.aliyuncs.com:3308'的默认地址 必须具有一个名为default
答案 0 :(得分:2)
我检查了go-mysql-driver source code, on file dsn.go:86,该错误仅在网络类型为""
时发生。
您需要在连接字符串上指定所选的网络类型(无论是tcp
还是unix
)。使用下面的连接字符串方案,而不是当前使用的方案。
<username>:<password>@<network-type>(<host>:<port>)/<dbname>
使用您的代码,就像这样:
connectionString := "root:root@tcp(*******.aliyuncs.com:3308)/dbname"
orm.RegisterDataBase("default", "mysql", connectionString)
注意:在上面的示例中选择了网络类型tcp
。