Files
doc_ai_backed/internal/storage/dao/engine.go
2026-01-27 21:56:21 +08:00

35 lines
701 B
Go

package dao
import (
"fmt"
"gitea.com/texpixel/document_ai/config"
"gorm.io/driver/mysql"
"gorm.io/gorm"
"gorm.io/gorm/logger"
)
var DB *gorm.DB
func InitDB(conf config.DatabaseConfig) {
dns := fmt.Sprintf("%s:%s@tcp(%s:%d)/%s?charset=utf8mb4&parseTime=True&loc=Asia%%2FShanghai", conf.Username, conf.Password, conf.Host, conf.Port, conf.DBName)
db, err := gorm.Open(mysql.Open(dns), &gorm.Config{
Logger: logger.Default.LogMode(logger.Silent), // 禁用 GORM 日志输出
})
if err != nil {
panic(err)
}
sqlDB, err := db.DB()
if err != nil {
panic(err)
}
sqlDB.SetMaxIdleConns(10)
sqlDB.SetMaxOpenConns(100)
DB = db
}
func CloseDB() {
sqlDB, _ := DB.DB()
sqlDB.Close()
}