1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| const ( DBUSER = "root" DBPASS = "" HOST = "127.0.0.1" PORT = "3306" DBNAME = "blog" )
func GetConn() *gorm.DB { connStr := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8&parseTime=True&loc=Local&timeout=10ms", DBUSER, DBPASS, HOST, PORT, DBNAME) fmt.Println(connStr)
db, err := gorm.Open("mysql", connStr) if err != nil { log.Fatalf("mysql connect error: %v", err) }
db.DB().SetMaxIdleConns(10) db.DB().SetMaxOpenConns(100)
if !db.HasTable("tbl_admin") { db.Set("gorm:table_options", "ENGINE=InnoDB").AutoMigrate(&Admin{}) }
if !db.HasTable("tbl_account") { db.Set("gorm:table_options", "ENGINE=InnoDB").AutoMigrate(&Account{}) }
return db }
|