go-kratos/internal/data/mysql.go

22 lines
406 B
Go

package data
import (
"ky-go-kratos/internal/conf"
"time"
"entgo.io/ent/dialect/sql"
)
func OpenMysql(c *conf.Data) (*sql.Driver, error) {
driver, err := sql.Open("mysql", c.Database.Source)
if err != nil {
return nil, err
}
// 获取数据库驱动中的sql.DB对象。
db := driver.DB()
db.SetMaxIdleConns(10)
db.SetMaxOpenConns(20)
db.SetConnMaxLifetime(time.Hour)
return driver, nil
}