Beego ORM MySQL:网络“...”的默认地址未知

Beego ORM MySQL: default addr for network '...' unknown

我的数据库link是域名而不是IP地址,我也不用ip地址。下面是我的配置。

orm.RegisterDataBase("default", "mysql", "root:root@*******.aliyuncs.com:3308/dbname?charset=utf8")

错误信息:

register db Ping default, default addr for network '***.mysql.rds.aliyuncs.com:3308' unknown must have one register DataBase alias named default

我查看了go-mysql-driver source code, on file dsn.go:116,只有当网络类型为""时才会出现错误。

您可能需要在连接字符串中指定所选的网络类型(无论是 tcp 还是 unix)。使用以下连接字符串方案,而不是您正在使用的方案。

<username>:<password>@<network-type>(<host>:<port>)/<dbname>

用你的代码,它会是这样的:

connectionString := "root:root@tcp(*******.aliyuncs.com:3308)/dbname"
orm.RegisterDataBase("default", "mysql", connectionString)

注意:上例中选择的网络类型tcp