fix(mysql): SetMysqlDB 默认 charset 改为 utf8mb4

与表字符集对齐,兼容 MySQL 8.0/8.4,避免连接层 utf8mb3。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-22 04:16:22 +08:00
parent f53d406110
commit a600fa8a15
2 changed files with 5 additions and 3 deletions
+2 -2
View File
@@ -781,7 +781,7 @@ func SetMysqlDB(appIns *Application, config Map) {
appIns.Db.Log = appIns.Log
appIns.SetConnectDB(func() (master, slave *sql.DB) {
query := config.GetString("user") + ":" + config.GetString("password") +
"@tcp(" + config.GetString("host") + ":" + config.GetString("port") + ")/" + config.GetString("name") + "?charset=utf8"
"@tcp(" + config.GetString("host") + ":" + config.GetString("port") + ")/" + config.GetString("name") + "?charset=utf8mb4"
DB, e := sql.Open("mysql", query)
if e != nil {
appIns.Log.Error().Err(e).Msg("MySQL 主库连接失败")
@@ -790,7 +790,7 @@ func SetMysqlDB(appIns *Application, config Map) {
configSlave := config.GetMap("slave")
if configSlave != nil {
query := configSlave.GetString("user") + ":" + configSlave.GetString("password") +
"@tcp(" + config.GetString("host") + ":" + configSlave.GetString("port") + ")/" + configSlave.GetString("name") + "?charset=utf8"
"@tcp(" + config.GetString("host") + ":" + configSlave.GetString("port") + ")/" + configSlave.GetString("name") + "?charset=utf8mb4"
DB1, e := sql.Open("mysql", query)
if e != nil {
appIns.Log.Error().Err(e).Msg("MySQL 从库连接失败")