今早上班按照惯例查看一下服务器的运行状况,top之后看到mysqld占用CPU100%而且居高不下,打开后台管理界面发现部分接口出现访问500的情况,处理步骤如下:
1、登录mysql,使用show full processlist命令查看正在执行的语句
2、发现执行列表中有几十条sql语句,并出现提醒Waiting for table flush阻塞查询
3、定位这些sql语句涉及到的表,分析原因可能是先前有同事delete了大量数据
4、重启mysql,使用OPTIMIZE TABLE 表名释放被删除数据的内存
因为系统当前使用者为内部人员所以直接重启mysql和优化表了,具体原因后续查证
记录修复MySql数据库CPU占用100%的过程
最新推荐文章于 2024-07-15 12:42:14 发布