如果发现Mysql有大量慢sql正在执行cpu高需要添加索引加不上, kill mysql 后马上又被业务系统执行起来.
在这个时候停掉业务系统是不太现实的.所以禁用对应的账号是最好的办法.
可以执行:
ALTER USER '用户名'@'%' ACCOUNT LOCK;
把执行慢sql的用户锁住
然后kill 所有当前的正在执行的慢sql
通过 show processlist; 查看state状态
若发现 有 lock 状态的,则差用以下命令杀死进程
kill id
id为截图中的id,实际为进程id
杀掉所有影响Mysql性能的SQL, 可以进行你的变跟.
做你的变跟,变跟完成后,
ALTER USER '用户'@'%' ACCOUNT UNLOCK;
解锁用户