golang如何连接数据库
1、连接数据库首先需要有连接驱动,安装驱动
go get github.com/go-sql-driver/mysql
下载成功后会保存到当前系统的GOPATH目录下的src子目录中
(免费学习视频教程推荐:mysql视频教程)
2、连接数据库
● 构建连接, 格式是:”用户名:密码@tcp(IP:端口)/数据库?charset=utf8”
● 打开数据库,前者是驱动名,所以要导入:
“github.com/go-sql-driver/mysql”
● 设置数据库最大连接数和设置上数据库最大闲置连接数
● 验证连接:使用Ping()函数
3、golang连接数据库示例代码:
import ( "database/sql" "fmt" "strings" // 安装方式: go get -u github.com/go-sql-driver/mysql _ "github.com/go-sql-driver/mysql" ) var ( dbhostsip = "127.0.0.1:3306" dbusername = "root" dbpassword = "123456" dbname = "chat" ) // 初始化数据库 func InitDB() (*sql.DB, error) { //构建连接信息 dbinfo := strings.Join([]string{dbusername, ":", dbpassword, "@tcp(", dbhostsip, ")/", dbname, "?charset=utf8"}, "") fmt.Println(dbinfo) //打开数据库,前面是驱动名称,所以要导入:mysql驱动github.com/go-sql-driver/mysql dbins, err := sql.Open("mysql", dbinfo) if nil != err { fmt.Println("Open Database Error:", err) return nil, err } // 设置数据库的最大连接数 dbins.SetConnMaxLifetime(100) // 设置数据库最大的闲置连接数 dbins.SetMaxIdleConns(10) // 验证连接 if err = dbins.Ping(); nil != err { fmt.Println("Open Database Fail,Error:", err) return nil, err } fmt.Println("Connect Success!!!") return dbins, nil }