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下面添加参数如下:
interactive_timeout=28800000 wait_timeout=28800000
windows下打开my.ini,增加:
interactive_timeout=28800000 wait_timeout=28800000
有实践表明,没有办法把这个值设置成无限大,即永久。因此如果你无法保证你的应用程序必定在设定的秒数内至少有一次操作,那么最好用第二个方法解决这个问题。
jdbc:mysql://hostaddress:3306/schemaname?autoReconnect=true
添加 autoReconnect=true 这个参数,即能解决这个问题。
mysql
jdbc:mysql://localhost/yourDatebase?useUnicode=true&characterEncoding=UTF-8 com.mysql.jdbc.Driver 90000 20 3 20 3 true true SELECT CURRENT_USER
建议关于mysql自动关闭服务的三个方法,用户最好采取第一个办法最为彻底解决。