一、查看当前网络负载,主要查看ESTABLISHED(阻塞的连接)的值是否太高,1000+:

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

二、链接MYSQL服务器,执行;

#查看当前连接,当前正在执行的SQL;
show processlist;

三、如果太多,如果可以的话,必要时刻先停掉导致卡的网站,等待SQL链接减少后再打开网站访问;

PS:重新打开访问之后继续查看连接情况,如果上升明显,则可能是程序有问题, 或者流量实在太高;

四、问题排查;
1、查看SQL慢日志,查看最前面的SQL语句,可能就是这几个SQL卡住了MYSQL服务,修复可能由于SQL问题导致的执行慢的SQL语句;

PS:改完SQL上线之后,记得备份一下慢日志文件,然后将日志文件清空;
cp /data0/mysql-slow.log /data0/mysql-slow.`date +"%y%m%d%k%M%S"`.log && echo '' > /data0/mysql-slow.log

标签: 运维

添加新评论