安装mysql

1
brew install mysql

启动mysql

1
mysql.server start

登录mysql

1
mysql -u root

mysql数据库go驱动安装

golang连接数据库用户的驱动是:`go-sql-driver’
打开终端执行命令

1
go get -u github.com/go-sql-driver/mysql

mysql数据库连接

构建连接, 格式是:”用户名:密码@tcp(IP:端口)/数据库?charset=utf8”
打开数据库,前者是驱动名,所以要导入: “github.com/go-sql-driver/mysql”
设置数据库最大连接数和设置上数据库最大闲置连接数
验证连接:使用Ping()函数
代码参考如下:

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
//数据库配置
const (
userName = "root"
password = "123456"
ip = "127.0.0.1"
port = "3306"
dbName = "loginserver"
)
//Db数据库连接池
var DB *sql.DB

//注意方法名大写,就是public
func InitDB() {
//构建连接:"用户名:密码@tcp(IP:端口)/数据库?charset=utf8"
path := strings.Join([]string{userName, ":", password, "@tcp(",ip, ":", port, ")/", dbName, "?charset=utf8"}, "")

//打开数据库,前者是驱动名,所以要导入: _ "github.com/go-sql-driver/mysql"
DB, _ = sql.Open("mysql", path)
//设置数据库最大连接数
DB.SetConnMaxLifetime(100)
//设置上数据库最大闲置连接数
DB.SetMaxIdleConns(10)
//验证连接
if err := DB.Ping(); err != nil{
fmt.Println("opon database fail")
return
}
fmt.Println("connnect success")
}