golang内部自带了连接池功能,所以只需要全局创建单例的db就可以了
创建连接池
创建db后并不需要自己去使用db.Close()去关闭,虽然提供了这样关闭方法但是完全不需要使用。
只要像下面这样创建连接就可以直接使用,如果非要使用关闭,那么可以在信号signal 部分去关闭系统的资源。
var DB *sql.DB func init() { db, _ = sql.Open("mysql", "root:@tcp(127.0.0.1:3306)/test?charset=utf8") db.SetMaxOpenConns(2000) db.SetMaxIdleConns(1000) db.Ping()}
- SetMaxOpenConns用于设置最大打开的连接数,默认值为0表示不限制。
- SetMaxIdleConns用于设置闲置的连接数。