32 lines
723 B
Go
32 lines
723 B
Go
package globals
|
||
|
||
import (
|
||
_ "github.com/go-sql-driver/mysql"
|
||
"github.com/jmoiron/sqlx"
|
||
"go.uber.org/zap"
|
||
"time"
|
||
)
|
||
|
||
var (
|
||
SugarLogger *zap.SugaredLogger
|
||
db *sqlx.DB
|
||
err error
|
||
)
|
||
|
||
func init() {
|
||
logger, _ := zap.NewDevelopment()
|
||
SugarLogger = logger.Sugar()
|
||
sqlStr := "root:WebServer@1@tcp(127.0.0.1:3306)/api?charset=utf8mb4&loc=Local&parseTime=true"
|
||
db, err = sqlx.Connect("mysql", sqlStr)
|
||
if err != nil {
|
||
SugarLogger.Debugf("加载数据库失败!err :%v", err)
|
||
}
|
||
db.SetConnMaxLifetime(time.Second * 10)
|
||
db.SetMaxOpenConns(200) // 设置与数据库建立连接的最大数目
|
||
db.SetMaxIdleConns(10) // 设置连接池中的最大闲置连接数
|
||
}
|
||
|
||
func GetDB() *sqlx.DB {
|
||
return db
|
||
}
|