0

0

关于MySQL的 too many connections

php中文网

php中文网

发布时间:2016-06-07 16:40:02

|

1344人浏览过

|

来源于php中文网

原创

网上有不少这方面的文章, 一些文章介绍通过增加MySQL最大连接数的方法来解决too many connections的问题。 这是一种不负责任的说法, 既然可以通过增加最大连接数来搞定, 那mysql设计的时候又何必来搞这么个惹人厌的参数呢?直接不限制连接数不就永远不会

    网上有不少这方面的文章, 一些文章介绍通过增加mysql最大连接数的方法来解决too many connections的问题。 这是一种不负责任的说法, 既然可以通过增加最大连接数来搞定, 那mysql设计的时候又何必来搞这么个惹人厌的参数呢?直接不限制连接数不就永远不会出现这种 too many connections 的问题了?

分析问题本质

    一切问题都要回到问题的本质。

     任何一个东西存在都有它存在的价值, mysql 的最大连接数也是一样, 如果不限制最大连接数的话, 任何请求都可以随便联服务器, 当出现瞬间大量的连接的时候,机器的内存不是要撑爆掉了?  这样的情况导致整个mysql都挂掉了, 大家谁都不能用了, 所以说需要一个最大连接数这样的限制, 正常情况下大家都可以连, 但是如果连接数太多的话后边的人就 too many connections 错误了, 这一是一种自我保护的策略。

    mysql默认的最大连接数是100,这个数值可以再大一点, 具体的情况要看机器的内存多大, 还要看连接mysql的应用的一些特征, 按照经验来说500够了。

排查问题

    出了问题肯定是得排查,出现连接数过多的情况,不是所有的客户端都要排队等待吗? 还好MySQL设计的时候给我们留了后门, root用户可以比最大连接数多一个连接, 当系统出现问题的时候, root用户可以走绿色通道进去管理(一些开发人员不注意, 应用程序连接mysql直接用的root用户,这样一旦出现too many connections 这种情况, 绿色通道已经被占用了, 连不上服务器只有干着急的份了,另外程序直接用root账号也不安全, 安全问题不是本文讨论的重点, 我们暂且按下不表)

    出现了 too many connections 的这种情况, 肯定是连接数用完了, 但是mysql 在干什么呢?  好比堵车了,你是交警你该怎么办呢? 首先要找到拥堵的原因吧。 

    1. 首先看一下系统的 CPU  Load  内存  swap    I/O参数, 帮助我们做原因的分析判断。

    2. 祭出绝招, 查看  processlist; 看看 进程列表里边的执行状态 , 可以把卡住的进程先杀掉在做优化

1

2

3

4

5

6

7

8

#按state统计processlist

mysql -h  127.0.0.1 -u root -pPwd --skip-column-names  -e "show processlist" grep -v -  | awk '{print $7}' uniq -c

#按数据表统计processlist

mysql -h  127.0.0.1 -u root -pPwd --skip-column-names  -e "show processlist" grep -v -  | awk '{print $4}' uniq -c

#按照用户统计processlist

mysql -h  127.0.0.1 -u root -pPwd --skip-column-names  -e "show processlist" grep -v -  | awk '{print $2}' uniq -c

     大多数连接状态是 sleep:

            表示连接没有及时释放.

    大多数连接状态是 locked。

            表被锁定了, 可以看一下更新的时候有没有用到索引, 没用到索引的话加上索引。 如果数据表用的 MyISAM 存储引擎, 可以考虑改用InnoDB存储引擎.

云网OA
云网OA

采用JSP开发的办公自动化产品、基于B/S结构,运行环境:JDK v1.5、Tomcat v5.5、MySQL v4.1,三者均为以上版本其他相关内容:可视化流程设计: 流程支持串签、会签和分支流程,可以设置流程节点的修改、删除权限,并可指定流程中各个用户在表单中可以填写的域。智能表单所见即所得设计: 智能设计,自动在数据库中生成表格,方便优化程序 公共交流: 集论坛、博客、聊天室于一体文件柜:C

下载

    大多数连接的状态是 sending 

            表示正在从硬盘读取数据, 可以考虑优化一下数据的读写, 尽可能的减少扫描的行数

    ?大多数连接的状态是 Free items 

    ?    ?    ?说明I/O压力过大, 或者硬盘故障

    ?大多数的连接是Waiting for net, writing to net , 

    ?    ?    ?看看网络连接的问题。

    ? 其他的不常见的可以参照一下, show processlist , 然后做出相应的优化.  总之 很多种情况都会导致 too many connections ,还是要透过具体的参数看本质才能真正滴解决问题!!

声明: 本文采用 CC BY-NC-SA 3.0 协议进行授权

转载请注明来源:小景的博客

本文链接地址:http://www.phpv5.com/blog/too-many-connections

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
C++ 设计模式与软件架构
C++ 设计模式与软件架构

本专题深入讲解 C++ 中的常见设计模式与架构优化,包括单例模式、工厂模式、观察者模式、策略模式、命令模式等,结合实际案例展示如何在 C++ 项目中应用这些模式提升代码可维护性与扩展性。通过案例分析,帮助开发者掌握 如何运用设计模式构建高质量的软件架构,提升系统的灵活性与可扩展性。

14

2026.01.30

c++ 字符串格式化
c++ 字符串格式化

本专题整合了c++字符串格式化用法、输出技巧、实践等等内容,阅读专题下面的文章了解更多详细内容。

9

2026.01.30

java 字符串格式化
java 字符串格式化

本专题整合了java如何进行字符串格式化相关教程、使用解析、方法详解等等内容。阅读专题下面的文章了解更多详细教程。

12

2026.01.30

python 字符串格式化
python 字符串格式化

本专题整合了python字符串格式化教程、实践、方法、进阶等等相关内容,阅读专题下面的文章了解更多详细操作。

4

2026.01.30

java入门学习合集
java入门学习合集

本专题整合了java入门学习指南、初学者项目实战、入门到精通等等内容,阅读专题下面的文章了解更多详细学习方法。

20

2026.01.29

java配置环境变量教程合集
java配置环境变量教程合集

本专题整合了java配置环境变量设置、步骤、安装jdk、避免冲突等等相关内容,阅读专题下面的文章了解更多详细操作。

18

2026.01.29

java成品学习网站推荐大全
java成品学习网站推荐大全

本专题整合了java成品网站、在线成品网站源码、源码入口等等相关内容,阅读专题下面的文章了解更多详细推荐内容。

19

2026.01.29

Java字符串处理使用教程合集
Java字符串处理使用教程合集

本专题整合了Java字符串截取、处理、使用、实战等等教程内容,阅读专题下面的文章了解详细操作教程。

3

2026.01.29

Java空对象相关教程合集
Java空对象相关教程合集

本专题整合了Java空对象相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.29

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
CSS3 教程
CSS3 教程

共18课时 | 5万人学习

PostgreSQL 教程
PostgreSQL 教程

共48课时 | 8.2万人学习

Django 教程
Django 教程

共28课时 | 3.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号