gpt4 book ai didi

mysql - 无法在 Go 中连接到远程 MySql

转载 作者:数据小太阳 更新时间:2023-10-29 03:27:38 25 4
gpt4 key购买 nike

我需要使用 Go 连接到远程 MySql 服务器。我正在使用以下代码通过 gorm 连接到 MySql。

 type DBController struct {
DB gorm.DB
}

func (dc *DBController) InitDB() {
var err error

host := v.GetString("db.mysql.host")
port := v.GetString("db.mysql.port")

user := v.GetString("db.mysql.user")
pass := v.GetString("db.mysql.pass")

db := v.GetString("db.mysql.db")

//user:password@tcp(localhost:5555)/dbname
conn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s", user, pass, host, port, db)
//conn := v.GetString($user+":"$pass+"@tcp("+$host+":"+$port+")/"+$db)
log.Debug(conn)

dc.DB, err = gorm.Open("mysql", conn)
if err != nil {
log.Fatalf("Error when connect database, the error is '%v'", err)
}
dc.DB.LogMode(true)
}

func (dc *DBController) GetDB() gorm.DB {
return dc.DB
}

当我运行 Go 服务器时,出现以下错误

No configuration file loaded - using defaults
:@tcp(:)/
Error when connect database, the error is 'dial tcp: unknown port tcp/'
exit status 1

如何解决这个错误?

最佳答案

我猜“v”是你的配置变量……它不包含任何数据,这不是 Gorm 的问题,这是因为 dc.Open() 没有收到配置值。

如果您尝试使用静态数据运行它,它应该可以工作。

关于mysql - 无法在 Go 中连接到远程 MySql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35814320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com