golang中mysql建立连接超时时间timeout

hikerwu · · 2242 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

本质上是dsn支持超时设置,不需要golang支持。 # 代码 ``` // simple.go package main import ( "database/sql" "log" "time" _ "github.com/go-sql-driver/mysql" ) var DB *sql.DB var dataBase = "root:Aa123456@tcp(192.168.0.101:3306)/?timeout=5s&readTimeout=6s" func mysqlInit() { var err error DB, err = sql.Open("mysql", dataBase) if err != nil { log.Fatalln("open db fail:", err) } DB.SetMaxOpenConns(3) DB.SetMaxIdleConns(3) } func main() { mysqlInit() for { log.Println("start") execSql() time.Sleep(3*time.Second) } } func execSql() { var value int err := DB.QueryRow("select 1").Scan(&value) if err != nil { log.Println("query failed:", err) return } log.Println("value:", value) } ```

有疑问加站长微信联系(非本文作者))

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2242 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传