最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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事務(wù)無(wú)法回滾的原因有哪些

    MySql事務(wù)無(wú)法回滾的原因有哪些

    使用MySQL時(shí),如果發(fā)現(xiàn)事務(wù)無(wú)法回滾,但Hibernate、Spring、JDBC等配置又沒(méi)有明顯問(wèn)題,到底是什么原因,下面與大家分享下
    2014-07-07
  • MySQL無(wú)GROUP BY直接HAVING返回空的問(wèn)題分析

    MySQL無(wú)GROUP BY直接HAVING返回空的問(wèn)題分析

    這篇文章主要介紹了MySQL無(wú)GROUP BY直接HAVING返回空的問(wèn)題分析,學(xué)習(xí)MYSQL需要注意這個(gè)問(wèn)題
    2013-11-11
  • MySQL的my.cnf配置文件解析

    MySQL的my.cnf配置文件解析

    本文解析了MySQL的my.cnf配置文件,其中包含了多個(gè)段,每個(gè)段定義了一組特定的配置選項(xiàng),包括客戶端配置、服務(wù)器配置、命令行客戶端默認(rèn)行為等,感興趣的可以了解一下
    2024-10-10
  • 淺析MySQL的WriteSet并行復(fù)制

    淺析MySQL的WriteSet并行復(fù)制

    這篇文章主要介紹了淺析MySQL的WriteSet并行復(fù)制的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)MySQL,感興趣的朋友可以了解下
    2020-11-11
  • MySQL邏輯備份的實(shí)現(xiàn)步驟

    MySQL邏輯備份的實(shí)現(xiàn)步驟

    本文主要介紹了MySQL邏輯備份的實(shí)現(xiàn)步驟,包括使用mysqldump和mysqlpump工具進(jìn)行備份和恢復(fù),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-03-03
  • 在Mysql環(huán)境下對(duì)數(shù)據(jù)進(jìn)行增刪改查的操作方法

    在Mysql環(huán)境下對(duì)數(shù)據(jù)進(jìn)行增刪改查的操作方法

    本文介紹了在MySQL環(huán)境下對(duì)數(shù)據(jù)進(jìn)行增刪改查的基本操作,包括插入數(shù)據(jù)、修改數(shù)據(jù)、刪除數(shù)據(jù)、數(shù)據(jù)查詢(基本查詢、連接查詢、聚合函數(shù)查詢、子查詢)等,并舉例說(shuō)明了每種操作的具體用法,感興趣的朋友跟隨小編一起看看吧
    2025-02-02
  • MySql約束超詳細(xì)介紹

    MySql約束超詳細(xì)介紹

    MySQL唯一約束(Unique?Key)是指所有記錄中字段的值不能重復(fù)出現(xiàn)。例如,為?id?字段加上唯一性約束后,每條記錄的?id?值都是唯一的,不能出現(xiàn)重復(fù)的情況
    2022-09-09
  • MySQL 如何限制一張表的記錄數(shù)

    MySQL 如何限制一張表的記錄數(shù)

    能否控制單表在一個(gè)固定的記錄數(shù),比如說(shuō)1W條,超過(guò)不讓插入新記錄或者說(shuō)直接拋出錯(cuò)誤?關(guān)于這個(gè)問(wèn)題,沒(méi)有一個(gè)簡(jiǎn)化的答案,比如執(zhí)行一條命令或者說(shuō)簡(jiǎn)單設(shè)置一個(gè)參數(shù)都不能完美解決。接下來(lái)便介紹MySQL 如何限制一張表的記錄數(shù)來(lái)給出一些可選解決方案
    2021-09-09
  • 詳解Mysql case then使用

    詳解Mysql case then使用

    mysql case then在程序開(kāi)發(fā)中經(jīng)常用到,通過(guò)本文給大家介紹mysql case then使用相關(guān)知識(shí),對(duì)mysql case then相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧
    2015-12-12
  • mysql 生成連續(xù)日期及變量賦值

    mysql 生成連續(xù)日期及變量賦值

    這篇文章主要介紹了mysql 生成連續(xù)日期及變量賦值的相關(guān)資料,分享內(nèi)容及代碼詳細(xì),具有一的參考價(jià)值,需要的小伙伴可以參考一下
    2022-03-03

最新評(píng)論

德昌县| 富锦市| 九龙县| 绥德县| 江门市| 阿瓦提县| 定远县| 于都县| 饶河县| 建昌县| 岚皋县| 保靖县| 津南区| 昔阳县| 清镇市| 棋牌| 灵宝市| 教育| 五家渠市| 奈曼旗| 怀化市| 南华县| 隆尧县| 大丰市| 遂溪县| 伊吾县| 额济纳旗| 新竹县| 娄烦县| 高雄县| 揭西县| 富锦市| 康乐县| 江油市| 阿鲁科尔沁旗| 佛学| 麻栗坡县| 石台县| 安远县| 光山县| 霍州市|