mysql.go 879 B

12345678910111213141516171819202122232425262728293031323334
  1. package main
  2. import (
  3. "fmt"
  4. "log"
  5. "os"
  6. "time"
  7. "gorm.io/driver/mysql"
  8. "gorm.io/gorm"
  9. gormLogger "gorm.io/gorm/logger"
  10. )
  11. //ConnV2 gorm v2版本的连接
  12. func DBConn() (db *gorm.DB) {
  13. //
  14. newLogger := gormLogger.New(
  15. log.New(os.Stdout, "\r\n", log.LstdFlags), // io writer
  16. gormLogger.Config{
  17. SlowThreshold: 2 * time.Second, // 慢 SQL 阈值
  18. LogLevel: gormLogger.Silent, // Log level
  19. Colorful: true, // 禁用彩色打印
  20. },
  21. )
  22. //
  23. connStr := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4&parseTime=True&loc=Local&timeout=5s", "rhythm", "lGoGOICMOKX50qn0sd5r", "10.21.33.7:3306", "rhythm_backend")
  24. // 设置 insert into时,自动批量10000的插入
  25. db, err := gorm.Open(mysql.Open(connStr), &gorm.Config{Logger: newLogger, CreateBatchSize: 10000})
  26. if err != nil {
  27. fmt.Println("db conn err", err)
  28. panic(err)
  29. }
  30. return
  31. }