MySql cpu占用过高


先看占用cpu 过高的 mysql 子进程

top -H -p mysqlpid
'
在看这个
SELECT a.THREAD_ID,b.user,b.host,b.db,b.command,b.time,b.state,b.info FROM performance_schema.threads a,information_schema.processlist b WHERE b.id = a.processlist_id;
SELECT a.THREAD_OS_ID,b.user,b.host,b.db,b.command,b.time,b.state,b.info FROM performance_schema.threads a,information_schema.processlist b WHERE b.id = a.processlist_id;
看相同 THREAD_OS_ID 和 PID 相同的在执行什么操作

修改my.cnf文件,将max_connections降低到,
发现没有改善,百度到可能是全局读写timeout时间没有优化的问题
修改mysql的my.cnf配置:
在[mysqld]添加
wait_timeout=120
interactive_timeout=120

或者看 show processlist 哪个一直在执行

不影响的线程 kill 就行

其他命令
show variables like 
'%max_connection%'
; 查看最大连接数

show status like  
'Threads%'