mysql占用CPU太高的處理方法(添加索引)。本站提示廣大學習愛好者:(mysql占用CPU太高的處理方法(添加索引))文章只能為提供參考,不一定能成為您想要的結果。以下是mysql占用CPU太高的處理方法(添加索引)正文
上面是MYSQL占用CPU高處置的一個例子,願望對碰到相似成績的同伙們有點啟示。普通來講MYQL占用CPU高,多半是數據庫查詢代碼成績,查詢數據庫過量。所以一方面要精簡代碼,另外一方面最好對頻仍應用的代碼設置索引。
明天早上起來 機械報警 一查負載一向都在4以上
top了一下 發明 mysql 穩居 第一 並且相當穩固 我擦
重啟一下mysql不可
mysql> show processlist;一下
發明xxx網站有兩條 查詢語句 一向 在列,我擦 該站 也就30多萬筆記錄 量也不年夜 弗成能是機械機能成績
溘然 記得之前在網上看過說是 tmp_table_size值太小會形成這類情形;
因而mysql -pxxx -e "show variables;" >tmp
一看是默許的32M(顯示出來的是字節數)
因而翁就高興的改了起來 增長到256 重啟 mysql 。。成果很掉望
不可啊 還得再來
select 一下該表 發明 外面 都是服裝論壇t.vhao.net留言的器械 量還挺年夜
因而:
mysql> show columns from bbs_message;
+-----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+--------------+------+-----+---------+----------------+
| msg_id | int(11) | NO | PRI | NULL | auto_increment |
| board_id | int(11) | NO | MUL | 0 | |
| parent_id | int(11) | NO | MUL | 0 | |
| root_id | int(11) | NO | MUL | 0 | |
一向在show processlist 外面湧現的 就是 select * from bbs_message where board_id=xxx and parent_id=xxx
和 select * from bbs_message where parent_id=xxx
只需這兩條一湧現 cpu就上去了
因而 從索引動手:
增長兩條索引
mysql> alter table bbs_message add index parentid(parent_id);
alter table bbs_message add index chaxunid(board_id,parent_id);
最初檢查一下索引成果:
mysql> show index from bbs_message;
+-------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| bbs_message | 0 | PRIMARY | 1 | msg_id | A | 2037 | NULL | NULL | | BTREE | |
| bbs_message | 1 | rootid | 1 | root_id | A | 49 | NULL | NULL | | BTREE | |
| bbs_message | 1 | chaxunid | 1 | board_id | A | 3 | NULL | NULL | | BTREE | |
| bbs_message | 1 | chaxunid | 2 | parent_id | A | 135 | NULL | NULL | | BTREE | |
| bbs_message | 1 | parentid | 1 | parent_id | A | 127 | NULL | NULL | | BTREE | |
+-------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
5 rows in set (0.00 sec)
加入 在 top 一下 負載一向在0.x 很穩固