gormV2 中不再有v1的 db.Close() 方法。
取而代之的 close 方式是如下:
sqlDB, err := DB.DB()
sqlDB.Close()
https://github.com/go-gorm/gorm/issues/3145
另外,gormV2 內部維護了連接池,設置連接數量,打開的連接全局使用即可。
http://v2.gorm.io/docs/generic_interface.html
// 獲取通用數據庫對象 sql.DB ,然后使用其提供的功能 sqlDB, err := db.DB() // SetMaxIdleConns 用於設置連接池中空閑連接的最大數量。 sqlDB.SetMaxIdleConns(10) // SetMaxOpenConns 設置打開數據庫連接的最大數量。 sqlDB.SetMaxOpenConns(100) // SetConnMaxLifetime 設置了連接可復用的最大時間。 sqlDB.SetConnMaxLifetime(time.Hour)
https://github.com/go-gorm/gorm/issues/3834