今天跑数据库得时候报出了这个问题:“Can not connect to MySQL server. Too many connections”-mysql 1040
百度了下根本原因是数据库语句阻塞导致达到了MySQL本机得最大连接
只需要杀死这些阻塞得进程即可。
查看所有数据库进程: show processlist##类似于sleep都是当前在阻塞当中
杀死单个进程:kill id#对应id
那么往往需要你kill得时候一般就是阻塞导致当前进程超过最大值#就报错而言
这时候了使用下面语句查询commit之后循环提交
select concat('KILL ',id,';') from information_schema.processlist where user='root'
详细代码:###修改了下变成线程版得,sql也改了,主要是将全局话得游标和连接改到单个查询或修改##一次掉用即重新构建连接
def run(self):
sq = Sql_all()
global h
# sql = "select concat('KILL ',id,';') from information_schema.processlist where user='