go 链接数据库
2022年1月10日1 安装包
1 |
$ go get github.com/go-sql-driver/mysql |
2 匿名导入 在文件main.go文件写入
1 2 3 4 5 6 7 8 |
package main import ( . . . _ "github.com/go-sql-driver/mysql" //匿名导入 ) |
3 清除没用的包
1 |
go mod tidy |
4.链接数据写法
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 33 34 |
package main import ( . . . _ "github.com/go-sql-driver/mysql" //匿名导入 ) var db *sql.DB func checkError(err error) { if err != nil { log.Fatal(err) } } func initDB() { var err error config := mysql.Config{ User: "homestead", Passwd: "secret", Addr: "127.0.0.1:33060", Net: "tcp", DBName: "goblog", AllowNativePasswords: true, } db, err = sql.Open("mysql", config.FormatDSN());checkError(err) //准备数据库连接池 db.SetMaxOpenConns(25) //设置最大连接数 db.SetMaxIdleConns(25) //设置最大空闲连接数 db.SetConnMaxLifetime(5 * time.Minute) //设置每个链接的过期时间 err = db.Ping();checkError(err) //尝试连接,失败会报错 } |