gorm.go 663 B

12345678910111213141516171819202122232425262728293031
  1. package initialize
  2. import (
  3. "AIT/global"
  4. "fmt"
  5. "gorm.io/driver/mysql"
  6. "gorm.io/gorm"
  7. "gorm.io/gorm/schema"
  8. "time"
  9. )
  10. func Mysql() {
  11. mysqlConfig := global.Config.Mysql
  12. var dsn = fmt.Sprintf("%s:%s@%s", mysqlConfig.UserName, mysqlConfig.Password, mysqlConfig.Url)
  13. db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{
  14. NamingStrategy: schema.NamingStrategy{SingularTable: true},
  15. })
  16. if err != nil {
  17. fmt.Printf("mysql error :%s", err.Error())
  18. return
  19. }
  20. sqlDb, err := db.DB()
  21. if err != nil {
  22. fmt.Printf("mysql error :%s", err.Error())
  23. }
  24. sqlDb.SetMaxIdleConns(10)
  25. sqlDb.SetMaxOpenConns(100)
  26. sqlDb.SetConnMaxLifetime(time.Hour)
  27. global.Db = db
  28. }