虚拟主机域名注册-常见问题数据库问题 → MySQL


mysql超时间wait_timeout设置的问题
作者:

在做连接池的时候,为了让连接更早的被释放掉。而修改my.cnf,

添加 wait_timeout = 600 也就是10分钟后MySQL服务自动断开连接

奇怪的是修改了之后使用 show variables like 'wait_timeout' 依然显示之前的28800

会发现设置好像并没有生效,这是因为单纯使用show variables的话就等同于使用的是show session variables,查询的是会话变量,只有使用show global variables,查询的才是全局变量。

上面重启的方法于正式环境而言 是不可取的 会影响到线上的一个正常的服务。

那么接下来的方法是 通过set方法

set global wait_timeout=10;

show global variables like 'wait_timeout';

即可

超过这个时间,mysql 就终止 select 语句的执行

mysql 5.6 及以后,有语句执行超时时间变量,用于在服务端对 select 语句进行超时时间限制;

mysql 5.6 中,名为: max_statement_time (毫秒)

mysql 5.7 以后,改成: max_execution_time (毫秒)

超过这个时间,mysql 就终止 select 语句的执行,客户端抛异常:

1907: Query execution was interrupted, max_execution_time exceeded.



来源:
阅读:2012
日期:2017-08-19

推荐朋友 】 【 评论 】  【 字体: 】 
上一篇:mysql 线程等待时间,解决sleep进程过多的办法
下一篇:超链接 a href 提交表单通过post方式
  >> 相关文章
  没有相关文章。
发表评论


点  评: 字数0
用户名:  密码:

  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款