- 資訊首頁(yè) > 互聯(lián)網(wǎng) >
- mysql占用CPU
一般來(lái)說(shuō)MYQL占用CPU高,多半是數據庫查詢(xún)代碼問(wèn)題,查詢(xún)數據庫過(guò)多。所以一方面要精簡(jiǎn)代碼,另一方面最好對頻繁使用的代碼設置索引。
今天早上起來(lái) 機器報警 一查負載一直都在4以上
top了一下 發(fā)現 mysql 穩居 第一 而且相當穩定 我擦
重啟一下mysql不行
mysql> show processlist;一下
發(fā)現xxx網(wǎng)站有兩條 查詢(xún)語(yǔ)句 一直 在列,我擦 該站 也就30多萬(wàn)條記錄 量也不大 不可能是機器性能問(wèn)題
忽然 記得以前在網(wǎng)上看過(guò)說(shuō)是 tmp_table_size值太小會(huì )造成這種情況;
于是mysql -pxxx -e "show variables;" >tmp
一看是默認的32M(顯示出來(lái)的是字節數)
于是翁就開(kāi)心的改了起來(lái) 增加到256 重啟 mysql 。。結果很失望
不行啊 還得再來(lái)
select 一下該表 發(fā)現 里面 都是論壇留言的東西 量還挺大
于是:
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 很穩定
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系QQ:712375056 進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。
Copyright ? 2009-2021 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 珠海市特網(wǎng)科技有限公司 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站