您的位置:首页 > 数据库 > MySQL

关于mysql占用CPU过高,问题解决

2014-07-29 11:30 531 查看
使用SHOW PROCESSLIST 查看
原因: 使用了 一个触发器 不断的去删除日志,保证每个用户的日志只有10条
去掉之后,CPU使用率从97% 降到了 17%。

利用show columns from 表名 查看 和 SQL 对比 查出
根本原因 : 删除条件里面 有一个 没有加索引,添加了索引后CPU在6%到40%波动,由于CPU单核,又加了很多触发器,所以去掉了这个 会频繁被触发的触发器。

lower_case_table_names=1可以忽略表名大小写

SHOW VARIABLES LIKE '%innodb_flush_log_at_trx_commit%';
--值分为三个 0 1 2, 目前知道设置成2 会对服务器优化
SET GLOBAL innodb_flush_log_at_trx_commit=2;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: