/
mysql.go
92 lines (81 loc) · 1.88 KB
/
mysql.go
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
package gamedata
import (
"FenDZ/glog-master"
"database/sql"
_ "github.com/go-sql-driver/mysql"
)
var db *sql.DB
var err error
func init1() {
StrConnection := "root" + ":" + "ruilide2016" + "@tcp(" + "127.0.0.1" + ":3306)/" + "gl_RuiliDe"
db, err = sql.Open("mysql", StrConnection)
checkError(err)
db.SetMaxOpenConns(2000)
db.SetMaxIdleConns(1000)
err = db.Ping()
checkError(err)
}
func checkError(err error) {
if err != nil {
glog.Info("db error: %s", err)
panic(err)
}
}
//// 链接池的最大链接数量
//const MAX_POOL_SIZE int = 200
//// 全局数据库变量
//var MySQLPool chan *sql.DB
//// 获取数据链接
//func getMySQL() *sql.DB {
// // 获取链接
// conn := GetMySQL1()
// // 压入队列
// putMySQL(conn)
// return conn
//}
//// 获取数据链接
//func GetMySQL() *sql.DB {
// // 获取链接
// conn := GetMySQL1()
// // 压入队列
// putMySQL(conn)
// return conn
//}
//// 获取链接指针函数
//func GetMySQL1() *sql.DB {
// if MySQLPool == nil {
// MySQLPool = make(chan *sql.DB, MAX_POOL_SIZE)
// }
// if len(MySQLPool) == 0 {
// go func() {
// for i := 0; i < MAX_POOL_SIZE/2; i++ {
// mysql := new(sql.DB)
// var err error
// var StrConnection = ""
// //if Log_Eio.BTest == true {
// // 测试
// StrConnection = "root" + ":" + "ruilide2016" + "@tcp(" + "127.0.0.1" + ":3306)/" + "gl_RuiliDe"
// //StrConnection = "root" + ":" + "123456" + "@tcp(" + "127.0.0.1" + ":3306)/" + "gl_RuiliDe"
// //}
// mysql, err = sql.Open("mysql", StrConnection)
// if err != nil {
// glog.Info("Connect Fail!")
// continue
// }
// putMySQL(mysql)
// }
// }()
// }
// return <-MySQLPool
//}
////存储指针函数
//func putMySQL(conn *sql.DB) {
// if MySQLPool == nil {
// MySQLPool = make(chan *sql.DB, MAX_POOL_SIZE)
// }
// if len(MySQLPool) == MAX_POOL_SIZE {
// conn.Close()
// return
// }
// MySQLPool <- conn
//}