【mysql】提示“too many connections”的解决办法

来源:互联网 发布:人工智能 智慧建筑 编辑:程序博客网 时间:2024/04/30 00:48


最近使用java多线程连接mysql打数据,安装好mysql后,使用500线程连接发现提示:too many connections,

查询方法得知是需要进行配置才行:

产生这种问题的原因是

连接数超过了 MySQL 设置的值,与 max_connections 和 wait_timeout  都有关系。wait_timeout 的值越大,连接的空闲等待就越长,这样就会造成当前连接数越大。

解决方法

修改MySQL配置文件/etc/my.cnf,设置成max_connections=1000,wait_timeout=5。如果没有此项设置可以自行添加,修改后重启MySQL服务即可。要不经常性报此错误,则要对服务器作整体性能优化

但发现机器上没有my.cnf文件,,哈哈哈,这就尴尬了.大笑

解决方法如下:

用rpm包安装的MySQL是不会安装/etc/my.cnf文件的,
至于为什么没有这个文件而MySQL却也能正常启动和作用,在点有两个说法,
第一种说法,my.cnf只是MySQL启动时的一个参数文件,可以没有它,这时MySQL会用内置的默认参数启动,
第二种说法,MySQL在启动时自动使用/usr/share/mysql目录下的my-medium.cnf文件,这种说法仅限于rpm包安装的MySQL,
解决方法,只需要复制一个/usr/share/mysql目录下的.cnf文件到/etc目录,并改名为my.cnf即可。
里面有一个问题,不一定有my-medium.cnf文件,但一定有个*.cnf文件,没错就是他,
然后,最总要的一点来了...记得重启,否则会报多线程不能使用的错误..重启机器,不是重启mysql服务,切记
0 0