gpt4 book ai didi

mysql - golang sql查询超时

转载 作者:数据小太阳 更新时间:2023-10-29 03:36:29 25 4
gpt4 key购买 nike

我想在针对防火墙的 DBMS 上未返回查询时返回。

首先,我设置代码

c, err := sql.Open("mysql",dbid+":"+dbps+"@tcp("+dbip[0]+":"+dbpt+")/"+dbnm+"?timeout=5s")

但是,不要那样做。

其次,我使用了上下文包中的函数。

 ctx, cancel := content.WithTimeout(context.Background(), time.Second * 10)
ret, err := db.QueryContext(ctx, "Select * from aaaa")

它在 10 秒后捕获了超时,但评估了错误消息

"no route to host"

我尝试再查询一次。

当读写查询发送时,如何编码评估超时?

最佳答案

我非常怀疑防火墙是否阻止了到数据库的路由。超时是显而易见的,因为主机本身是不可访问的。 10 秒的评估基于您编写的计时器,并且由于防火墙阻止了您的 DBHost,您没有将超时作为评估错误。

关于mysql - golang sql查询超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54587093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com