MySQL 8小时的问题_MySQL
程序员文章站
2024-02-07 07:59:16
...
bitsCN.com
基于 MySQL的Web网站在一段时间后会经常处于无法响应的状态,或者响应非常慢,这是由于数据库连接自动关闭了。在MySQL Command Line Client中执行show variables like '%timeout%'
中我们可以看到有两个变量wait_timeout和interactive-timeout,它们的默认值都为28800秒,即为8小时。也就是说默认情况下,Mysql在经过8小时(28800秒)不使用后会自动关闭已打开的连接。 1.为了解决这个问题,对于MySQL5之前的版本,如Mysql4.x,只需要修改连接池配置中的URL,添加一个参数:autoReconnect=true,如果是MySQL5及以后的版本,则需要修改my.cnf(或者my.ini)文件,在[mysqld]后面添加上: wait_timeout = n interactive-timeout = n n为服务器关闭交互式连接前等待活动的秒数。 2. ruguoc3p0 连接池解决方法
当属性为true 时可以解决。因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的时候都将校验其有效性。建议使用 idleConnectionTestPeriod或automaticTestTable 等方法来提升连接测试的性能 隔多少秒检查所有连接池中的空闲连接,默认为0表示不检查; chaunceyhao bitsCN.com
基于 MySQL的Web网站在一段时间后会经常处于无法响应的状态,或者响应非常慢,这是由于数据库连接自动关闭了。在MySQL Command Line Client中执行show variables like '%timeout%'
中我们可以看到有两个变量wait_timeout和interactive-timeout,它们的默认值都为28800秒,即为8小时。也就是说默认情况下,Mysql在经过8小时(28800秒)不使用后会自动关闭已打开的连接。 1.为了解决这个问题,对于MySQL5之前的版本,如Mysql4.x,只需要修改连接池配置中的URL,添加一个参数:autoReconnect=true,如果是MySQL5及以后的版本,则需要修改my.cnf(或者my.ini)文件,在[mysqld]后面添加上: wait_timeout = n interactive-timeout = n n为服务器关闭交互式连接前等待活动的秒数。 2. ruguoc3p0 连接池解决方法
当属性为true 时可以解决。因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的时候都将校验其有效性。建议使用 idleConnectionTestPeriod或automaticTestTable 等方法来提升连接测试的性能
推荐阅读
-
用XtraBackup实现MySQL的主从复制快速部署【主不锁表】
-
mysql下修改engine引擎的方法
-
在Windows主机上定时备份远程VPS(CentOS)数据的批处理_MySQL
-
请教怎么将mysql_fetch_object得到的对象塞到数组里面
-
求回答,本人想做一个购物(实体商品+虚拟商品)网站,比较全面、完整的mysql数据库
-
mysql-JDBC连接MySQL插入数据问题
-
mysql 是否可以将多次查询的结果混合输出?
-
java-Java连mysql的一些问题
-
VPS下修改MySQL root用户密码的方法_MySQL
-
实例讲解启动mysql server失败的解决方法_MySQL