43 lines
795 B
Go
43 lines
795 B
Go
|
package db_mysql
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"github.com/tiger1103/gfast/v3/database"
|
||
|
"gorm.io/driver/mysql"
|
||
|
"gorm.io/gorm"
|
||
|
"time"
|
||
|
)
|
||
|
|
||
|
var (
|
||
|
HOST = "" //主机
|
||
|
PORT = "" //端口
|
||
|
USERNAME = "" //用户名
|
||
|
PASSWORD = "" //密码
|
||
|
DBNAME = "" //数据库
|
||
|
)
|
||
|
|
||
|
func InitMySQL() {
|
||
|
connectDB(getMysqlAddr())
|
||
|
}
|
||
|
|
||
|
/*获取MySQL连接地址*/
|
||
|
func getMysqlAddr() string {
|
||
|
return USERNAME + ":" + PASSWORD + "@tcp(" + HOST + ":" + PORT + ")/" + DBNAME + "?charset=utf8&parseTime=True&loc=Local"
|
||
|
}
|
||
|
|
||
|
func connectDB(path string) {
|
||
|
db, err := gorm.Open(mysql.Open(path), &gorm.Config{})
|
||
|
if err != nil {
|
||
|
fmt.Println(err)
|
||
|
return
|
||
|
}
|
||
|
d, err := db.DB()
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
d.SetMaxIdleConns(10)
|
||
|
//d.SetMaxOpenConns()
|
||
|
d.SetConnMaxLifetime(time.Second * 60)
|
||
|
database.SetORMDBInstance(db)
|
||
|
}
|