教程集 www.jiaochengji.com
教程集 >  数据库  >  mysql  >  正文 MySQL服务器设置max_user_connections防止连接耗尽,以提高可用性

MySQL服务器设置max_user_connections防止连接耗尽,以提高可用性

发布时间:2017-12-11   编辑:jiaochengji.com
教程集为您提供MySQL服务器设置max,user,connections防止连接耗尽,以提高可用性等资源,欢迎您收藏本站,我们将为您提供最新的MySQL服务器设置max,user,connections防止连接耗尽,以提高可用性资源
max_user_connections在mysql中可以设置防止资源被用玩了,所以我们只要在MySQL服务器设置max_user_connections就可以防止连接耗尽,以提高可用性。

问题简述/现象及原因

一台MySQL服务器上,有多个数据库,由不同用户使用,相互之间没有或很少关联性。典型的实例是虚拟主机,或者有N多个小网站的某些低频企业应用。

这种环境下,难免有部分应用的质量不高:

出现效率极低的慢查询 -> 后续请求大量被locked排队 -> MySQL服务实时连接数达到最大连接数限制  ->  无法建立新连接

so, 所有相关应用全部挂掉

应对方案

为防止上述情况发生,要为MySQL配置max_user_connections参数。该参数作用是设置单个用户最大连接数限制。具体设置多少,要根据实际情况再裁定。

需要引起注意的是,这个参数是针对所有用户的限制,所以要考察正常情况下连接数最多的用户。可以使用下面语句实时查询各用户连接数。

select `USER`,COUNT(`USER`) AS CNT from information_schema.PROCESSLIST GROUP BY `USER` ORDER BY CNT DESC;
一个参考数值,将 max_user_connections 设置为正常情况下单用户最大连接数的3-5倍。

max_user_connections参数可以在MySQL运行时动态设置 set global …. 当然,也要同步写到my.ini配置参数里。

方案评估

max_user_connections 是个一刀切的配置参数,好像MySQL不能对每个用户设置连接数,并发查询数,io,cpu占用或其它什么什么的细粒度参数。或许并非一定有效。

与max_connections参数对比

max_connections 是指整个mysql服务器的最大连接数;

max_user_connections 是指每个MySQL用户的最大连接数

您可能感兴趣的文章:
MySQL服务器设置max_user_connections防止连接耗尽,以提高可用性
mysql报错too many connections的解决方法
mysql 1203错误的解决方法
安装连接mysql的工具Navicat 出现1044/1045错误的解决方法
MySQL sleep进程连接过多卡住了问题解决办法
mysql配置文件中文解释
mysql sleep连接过多的解决方法
php网站速度变慢的原因综合分析
mysql: too many connections的解决方法
PHP网站大流量与高并发的解决方法

[关闭]
~ ~