欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql占用CPU過(guò)高的解決辦法(添加索引)

 更新時(shí)間:2013年03月19日 16:15:56   作者:  
下面是MYSQL占用CPU高處理的一個(gè)例子,希望對(duì)遇到類似問(wèn)題的朋友們有點(diǎn)啟發(fā)。一般來(lái)說(shuō)MYQL占用CPU高,多半是數(shù)據(jù)庫(kù)查詢代碼問(wèn)題,查詢數(shù)據(jù)庫(kù)過(guò)多。所以一方面要精簡(jiǎn)代碼,另一方面最好對(duì)頻繁使用的代碼設(shè)置索引
下面是MYSQL占用CPU高處理的一個(gè)例子,希望對(duì)遇到類似問(wèn)題的朋友們有點(diǎn)啟發(fā)。一般來(lái)說(shuō)MYQL占用CPU高,多半是數(shù)據(jù)庫(kù)查詢代碼問(wèn)題,查詢數(shù)據(jù)庫(kù)過(guò)多。所以一方面要精簡(jiǎn)代碼,另一方面最好對(duì)頻繁使用的代碼設(shè)置索引。

今天早上起來(lái) 機(jī)器報(bào)警 一查負(fù)載一直都在4以上

top了一下 發(fā)現(xiàn) mysql 穩(wěn)居 第一 而且相當(dāng)穩(wěn)定 我擦
重啟一下mysql不行
mysql> show processlist;一下
發(fā)現(xiàn)xxx網(wǎng)站有兩條 查詢語(yǔ)句 一直 在列,我擦 該站 也就30多萬(wàn)條記錄 量也不大 不可能是機(jī)器性能問(wèn)題

忽然 記得以前在網(wǎng)上看過(guò)說(shuō)是 tmp_table_size值太小會(huì)造成這種情況;
于是mysql -pxxx -e "show variables;" >tmp
一看是默認(rèn)的32M(顯示出來(lái)的是字節(jié)數(shù))
于是翁就開(kāi)心的改了起來(lái) 增加到256 重啟 mysql 。。結(jié)果很失望

不行啊 還得再來(lái)
select 一下該表 發(fā)現(xiàn) 里面 都是論壇留言的東西 量還挺大
于是:
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 里面出現(xiàn)的 就是 select * from bbs_message where board_id=xxx and parent_id=xxx
和 select * from bbs_message where parent_id=xxx
只要這兩條一出現(xiàn) cpu就上去了
于是 從索引入手:
增加兩條索引
mysql> alter table bbs_message add index parentid(parent_id);
alter table bbs_message add index chaxunid(board_id,parent_id);
最后查看一下索引結(jié)果:
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 一下 負(fù)載一直在0.x 很穩(wěn)定

相關(guān)文章

  • mysql中varchar和text的區(qū)別和比較

    mysql中varchar和text的區(qū)別和比較

    在存儲(chǔ)字符串時(shí)可以使用char、varchar或者text類型,下面這篇文章主要給大家介紹了關(guān)于mysql中varchar和text的區(qū)別和比較的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-10-10
  • mysql5.6主從搭建以及不同步問(wèn)題詳解

    mysql5.6主從搭建以及不同步問(wèn)題詳解

    大家好,本篇文章主要講了mysql5.6主從搭建以及不同步問(wèn)題詳解,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Centos MySQL 5.7安裝、升級(jí)教程

    Centos MySQL 5.7安裝、升級(jí)教程

    這篇文章主要為大家詳細(xì)介紹了Centos MySQL 5.7安裝、升級(jí)教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • mysql8.0?lower_case_table_names?大小寫敏感設(shè)置問(wèn)題解決

    mysql8.0?lower_case_table_names?大小寫敏感設(shè)置問(wèn)題解決

    在默認(rèn)情況下,這個(gè)變量是設(shè)置為0的,以保持向前兼容性,如果將該變量設(shè)置為1,則表名和數(shù)據(jù)庫(kù)名將被區(qū)分大小寫,本文主要介紹了mysql8.0?lower_case_table_names?大小寫敏感設(shè)置問(wèn)題解決,感興趣的可以了解一下
    2023-09-09
  • Mysql匿名登錄無(wú)法創(chuàng)建數(shù)據(jù)庫(kù)問(wèn)題解決方案

    Mysql匿名登錄無(wú)法創(chuàng)建數(shù)據(jù)庫(kù)問(wèn)題解決方案

    這篇文章主要介紹了Mysql匿名登錄無(wú)法創(chuàng)建數(shù)據(jù)庫(kù)問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-12-12
  • mysql導(dǎo)入csv的4種報(bào)錯(cuò)的解決方法

    mysql導(dǎo)入csv的4種報(bào)錯(cuò)的解決方法

    這篇文章主要介紹了mysql導(dǎo)入csv的4種報(bào)錯(cuò)的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Window 下安裝Mysql5.7.17 及設(shè)置編碼為utf8的方法

    Window 下安裝Mysql5.7.17 及設(shè)置編碼為utf8的方法

    這篇文章主要介紹了Window 下安裝Mysql5.7.17 及設(shè)置編碼為utf8的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-03-03
  • MySQL約束之默認(rèn)約束default與零填充約束zerofill

    MySQL約束之默認(rèn)約束default與零填充約束zerofill

    這篇文章主要介紹了MySQL約束之默認(rèn)約束default與零填充約束zerofill,MySQL?默認(rèn)值約束用來(lái)指定某列的默認(rèn)值。更多相關(guān)資料需要的朋友可以參考一下
    2022-07-07
  • MySQL實(shí)現(xiàn)分布式鎖

    MySQL實(shí)現(xiàn)分布式鎖

    這篇文章主要介紹了MySQL實(shí)現(xiàn)分布式鎖,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Mysql常用sql語(yǔ)句匯總

    Mysql常用sql語(yǔ)句匯總

    這篇文章主要介紹了Mysql常用sql語(yǔ)句匯總的相關(guān)資料,需要的朋友可以參考下
    2017-09-09

最新評(píng)論