目前的线上数据库,分为主从两个库,从库用来做比较耗时的数据统计分析。
今天top了一下从库服务器,发现mysqld 在很长一段时间都占用105% cpu,一开始以为是从库在处理主库的binlog.
两分钟后,发现不对,单次主从同步不会超过5秒的。
进入mysql命令行
show full processlist \G; 一个查询线程正在执行。sql 中使用了 in 关键字。非常耗时,几乎不会停止。
kill query process_id<查询线程的id> 杀死了这个进程。
果然,cpu 使用率恢复了正常。