博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何解决mysql数据库X小时无连接自动关闭
阅读量:5935 次
发布时间:2019-06-19

本文共 957 字,大约阅读时间需要 3 分钟。

windows下打开my.ini,增加:

interactive_timeout=28800000

wait_timeout=28800000

 

专家解答:MySQL是一个小型关系型数据库管理系统,由于MySQL体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。 关于mysql自动关闭服务的现象,可以通过mysql服务器端程序mysql Administrator调整连接参数。将max_connections max_updates max_questions三项数据调整到很大的数字,那么你有限的操作将不会导致数据库服务的终止了在MySQL数据库中,如果一个连接8小时没有请求和操作,就会自动断开,从而导致一些基于数据库连接的应用程序,特别是 WEB 应用程序出错。

解决mysql数据库自动关闭服务三个方法:

方法一:这个参数的名称是 wait_timeout,其默认值为 28800秒(8小时)。其意义为关闭一个连接之前在这个连接上等到行动的秒数,也就是说,如果一个连接闲置超过这个选项所设置的秒数,MySQL 会主动断开这个连接。

修改操作:

linux下打开/etc/my.cnf,在属性组mysqld下面添加参数如下:

[mysqld]

interactive_timeout=28800000

wait_timeout=28800000

windows下打开my.ini,增加:

[mysqld]

interactive_timeout=28800000

wait_timeout=28800000

 

有实践表明,没有办法把这个值设置成无限大,即永久。

因此如果你无法保证你的应用程序必定在设定的秒数内至少有一次操作,那么最好用第二个方法解决这个问题。

方法二:修改如下JDBC连接的 URL:

dbc:mysql://hostaddress:3306/schemaname?autoReconnect=true 添加 autoReconnect=true 这个参数,即能解决这个问题。

方法三:配置文件(proxool.xml):

……

专家建议关于mysql自动关闭服务的三个方法,用户最好采取第一个办法最为彻底解决。

转载地址:http://xyjtx.baihongyu.com/

你可能感兴趣的文章
CardView源码解析-View阴影
查看>>
Android自动生成代码的2种方式
查看>>
让人疑惑的Java代码 - Java那些事儿
查看>>
用 Vue 撸一个微博客户端
查看>>
False SQL Injection and Advanced Blind SQL Injection
查看>>
这么说吧,Lucene很简单,其实就是个框架,用于全文检索用的
查看>>
聊聊storm trident的state
查看>>
JB的Python之旅-爬虫篇-新浪微博内容爬取
查看>>
如何把 Java Web 应用放在 docker 容器中运行
查看>>
Xcode的Refactor使用
查看>>
webpack配置historyApiFallback的坑
查看>>
浅谈Javascript中的作用域链
查看>>
PopupMenu
查看>>
自己动手做一个IM框架(二)
查看>>
Javascript 模块化指北
查看>>
MarkDown 的常用高阶教程
查看>>
利用File,Drop&Drag,XHR2实现图片拖拽上传
查看>>
如何用 SpringBoot 优雅的写代码
查看>>
Jerry 2017年的五一小长假:8种经典排序算法的ABAP实现
查看>>
Aapt.exe finished with non-zero exit value 1
查看>>