mysql too many_MYSQL提示“too many connections”

问题描述:产生这个问题的原因很明显,数据库连接太多。

原因剖析:

1)从代码角度:基于目前的ORM框架,基本告别了手动关闭连接的方式。如果代码问题,基本就要考虑事务锁定。

2)从数据库连接数角度:数据库连接默认是100个,基本够用。

解决方式:

基于以上两个原因,基本没有分析出任何问题。怎么办?回到问题本身,too many connections,我们先去查看下到底有哪些连接。以linux为例:

1)mysql -u root -p

2)输入密码

3)mysql->show processlist;

显示如下截图:

af9c29f2eebc

222.png

至此,我们发现有好多sleep状态的连接。百度一番,终于得到两种解决方案:

1)kill 进程id;

2)修改mysql配置文件,扩大其连接数,缩短休眠连接时间(超时就自动断开)

a)vi /etc/my.cnf

b)按下“i”进入编辑模式,输入

wait_timeout = 600

interactive_timeout = 600

再按下“ESC”,输入:wq保存文件并退出

c)重启mysql

1、查看mysql版本

方法一:status;

方法二:select version();

2、Mysql启动、停止、重启常用命令

a、启动方式

1、使用 service 启动:

[root@localhost /]# service mysqld start (5.0版本是mysqld)

[root@szxdb etc]# service mysql start (5.5.7版本是mysql)

2、使用 mysqld 脚本启动:

/etc/inint.d/mysqld start

3、使用 safe_mysqld 启动:

safe_mysqld&

b、停止

1、使用 service 启动:

service mysqld stop

2、使用 mysqld 脚本启动:

/etc/inint.d/mysqld stop

3、mysqladmin shutdown

c、重启

1、使用 service 启动:

service mysqld restart

service mysql restart (5.5.7版本命令)

2、使用 mysqld 脚本启动:

/etc/init.d/mysqld restart

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值