mysql连接数过多

来源:互联网 发布:越狱软件一键安装软件 编辑:程序博客网 时间:2024/04/29 04:30

django web开发中遇到这个错误:

大概的意思是mysql连接过多,

查看mysql中的进程(命令),确实有好多sleep的进程。


一、原因

1.没有及时关闭连接

使用资源一定要释放

2.一次太多连接,mysql本身没抗住


3.优化不够,查询时间太长


二、解决方法

解决一:

1.使用后及时关闭连接


2.使用短连接而不是长连接

使用完一次,就关闭一次


解决二:

1.设置mysql支持更多的连接

1.1查看当前连接数

show variables like 'max_connections';

1.2在配置文件增加:

max_connections = 1000

1.3重启


2.设置sleep的超时时间

查看当前设置的超时时间:

show variables like “%timeout%”;

 | interactive_timeout         | 28800    | 
 | lock_wait_timeout           | 31536000 | 
 | net_read_timeout            | 30       | 
 | net_write_timeout           | 60       | 
 | slave_net_timeout           | 3600     | 
 | wait_timeout                | 28800    | 


在配置文件中加入:

wait_timeout=120
interactive_timeout=120


然后重启


解决三:

优化SQL

原创粉丝点击