初始化实现
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
"time"
|
||||
|
||||
"code.yun.ink/pkg/mysqlx"
|
||||
"github.com/go-sql-driver/mysql"
|
||||
"gorm.io/gorm/logger"
|
||||
)
|
||||
|
||||
func main() {
|
||||
cfg := mysql.NewConfig()
|
||||
cfg.User = "testuser"
|
||||
cfg.Passwd = "password"
|
||||
cfg.Net = "tcp"
|
||||
cfg.Addr = "127.0.0.1:3306"
|
||||
cfg.DBName = "testdb"
|
||||
cfg.ParseTime = true
|
||||
cfg.Loc = time.Local
|
||||
cfg.Params = map[string]string{
|
||||
"charset": "utf8mb4",
|
||||
}
|
||||
|
||||
client, err := mysqlx.NewDB(
|
||||
mysqlx.WithDSNConfig(cfg),
|
||||
mysqlx.WithDSNTimeout(5*time.Second),
|
||||
mysqlx.WithDSNReadTimeout(10*time.Second),
|
||||
mysqlx.WithDSNWriteTimeout(10*time.Second),
|
||||
mysqlx.WithDSNParams(map[string]string{"multiStatements": "true"}),
|
||||
mysqlx.WithLogger(logger.Default.LogMode(logger.Warn)),
|
||||
)
|
||||
if err != nil {
|
||||
log.Fatalf("failed to create mysqlx client: %v", err)
|
||||
}
|
||||
defer client.Close()
|
||||
|
||||
fmt.Println("MySQL client created with expanded DSN configuration")
|
||||
_ = client
|
||||
}
|
||||
Reference in New Issue
Block a user