MYSQL数据连接超时时间设置

lwx_worker 2009-10-30 05:16:26
请问 只用mysql CAPI 如何设置 mysql_real_connect连接超时时间。


我这样
MYSQL *conn = mysql_init (&mysql);
int ret = mysql_options(conn, MYSQL_SET_CHARSET_NAME, "gbk");
unsigned int timeout = 1;
ret = mysql_options(&mysql,MYSQL_OPT_CONNECT_TIMEOUT,&timeout);
if(!mysql_real_connect(&mysql,"192.168.123.234","root","root","webautohome",3306,NULL,0))
{
AfxMessageBox("数据库连接失败");
return FALSE;
}

是没有效果的,大约20秒,连接不到才会提示。
...全文
1075 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bai_ye 2009-12-17
  • 打赏
  • 举报
回复
我碰到了表现类似的情况。
也是在 mysql_real_connect 返回出错。
进入 mysql 后执行 use dbname ,发现要20秒才出现Database changed。
这种情况让我误认为是mysql_real_connect 链接mysql因为超时而出错。
后面将mysql error打印出来后才清楚,原来是客户端的mysql版本过低导致的...
bai_ye 2009-12-17
  • 打赏
  • 举报
回复
hello
lwx_worker 2009-11-30
  • 打赏
  • 举报
回复
哦,conn MYSQL* ,mysql MYSQL类型,

conn = &mysql
应该是一样的吧
快乐鹦鹉 2009-11-30
  • 打赏
  • 举报
回复
int ret = mysql_options(conn, MYSQL_SET_CHARSET_NAME, "gbk");
unsigned int timeout = 1;
ret = mysql_options(&mysql,MYSQL_OPT_CONNECT_TIMEOUT,&timeout);
=============为什么两个mysql_options的第一个参数不一样呢???
lwx_worker 2009-11-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 happyparrot 的回复:]
对于MYSQL,我知道的还没有你多。
我看网上都说用这个函数设置超时时间。你把timeout再设置大一些呢?比如10秒,是否有效果?
[/Quote]

没有效果
快乐鹦鹉 2009-11-30
  • 打赏
  • 举报
回复
对于MYSQL,我知道的还没有你多。
我看网上都说用这个函数设置超时时间。你把timeout再设置大一些呢?比如10秒,是否有效果?

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧