MySQL的優(yōu)化

通過show status了解SQL執(zhí)行頻率

mysql> show status like 'com_%';
+-----------------------------+-------+
| Variable_name               | Value |
+-----------------------------+-------+
| Com_admin_commands          | 0     |
| Com_assign_to_keycache      | 0     |
| Com_alter_db                | 0     |
| Com_alter_db_upgrade        | 0     |
| Com_alter_event             | 0     |
| Com_alter_function          | 0     |
| Com_alter_instance          | 0     |
| Com_alter_procedure         | 0     |
| Com_alter_server            | 0     |
| Com_alter_table             | 0     |
| Com_alter_tablespace        | 0     |
| Com_alter_user              | 0     |
| Com_analyze                 | 0     |
| Com_begin                   | 0     |
| Com_binlog                  | 0     |
| Com_call_procedure          | 0     |
| Com_change_db               | 1     |
| Com_change_master           | 0     |
| Com_change_repl_filter      | 0     |
| Com_check                   | 0     |
| Com_checksum                | 0     |
| Com_commit                  | 0     |
...

Com_xxx表示每個xxx語句執(zhí)行的次數(shù)

參數(shù)說明
  • Com_select:執(zhí)行select操作的次數(shù)
  • Com_insert:執(zhí)行insert操作的次數(shù)

定位執(zhí)行效率較低的SQL

#在my.cnf中配置
log-slow-queries=/usr/local/mysql/log_slow_queries.log
long_query_time=0.01
  • 通過show processlist命令查看的當(dāng)期那MySQL在進(jìn)行的線程

    • 線程的狀態(tài)
    • 是否鎖表

通過explain 分析低效SQL的執(zhí)行計(jì)劃

本優(yōu)化案例下載地址http://downloads.mysql.com/docs/sakila-db.zip MySQL官方提供的電影出租廳信息管理系統(tǒng)

mysql> explain select sum(amount) from customer a, payment b where 1=1 and a.customer_id = b.customer_id and email='JANE.BENNETT@sakilacustomer.org'\G
*************************** 1. row ***************************
           id: 1
  select_type: SIMPLE
        table: a
   partitions: NULL
         type: ALL
possible_keys: PRIMARY
          key: NULL
      key_len: NULL
          ref: NULL
         rows: 599
     filtered: 10.00
        Extra: Using where
*************************** 2. row ***************************
           id: 1
  select_type: SIMPLE
        table: b
   partitions: NULL
         type: ref
possible_keys: idx_fk_customer_id
          key: idx_fk_customer_id
      key_len: 2
          ref: sakila.a.customer_id
         rows: 26
     filtered: 100.00
        Extra: NULL
2 rows in set, 1 warning (0.00 sec)

參數(shù)簡單說明

 select_type:select類型
      SIMPLE:簡單表挪凑,不使用表連接或者子查詢
      PRIMARY:主查詢乘客,即外層查詢
      UNION:第二或者后面的查詢語句
      SUBQUERY:子查詢中第一個SELECT

table:輸出結(jié)果集的表
type:表示MySQL在表中找到所需行的方式
      type=ALL:全表掃描(性能最差)
      type=index:索引全掃描局劲,MySQL遍歷整個索引來查詢匹配的行
      type=range:索引范圍掃描铭若,常見于<愧膀、<=、>架忌、>=、between等操作符
      type=ref:使用非唯一索引掃描或唯一索引的前綴掃描蔬咬,返回匹配某個單獨(dú)值的記錄行
     type=eq_ref
     type=const/system
     type=NULL(性能最好)

案例

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市沐寺,隨后出現(xiàn)的幾起案子计盒,更是在濱河造成了極大的恐慌,老刑警劉巖芽丹,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異卜朗,居然都是意外死亡拔第,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進(jìn)店門场钉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蚊俺,“玉大人,你說我怎么就攤上這事逛万∮锯” “怎么了?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵宇植,是天一觀的道長得封。 經(jīng)常有香客問我,道長指郁,這世上最難降的妖魔是什么忙上? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任,我火速辦了婚禮闲坎,結(jié)果婚禮上疫粥,老公的妹妹穿的比我還像新娘。我一直安慰自己腰懂,他們只是感情好梗逮,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著绣溜,像睡著了一般慷彤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上怖喻,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天瞬欧,我揣著相機(jī)與錄音,去河邊找鬼罢防。 笑死艘虎,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的咒吐。 我是一名探鬼主播野建,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼属划,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了候生?” 一聲冷哼從身側(cè)響起同眯,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎唯鸭,沒想到半個月后须蜗,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡目溉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年明肮,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片缭付。...
    茶點(diǎn)故事閱讀 38,809評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡柿估,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出陷猫,到底是詐尸還是另有隱情秫舌,我是刑警寧澤,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布绣檬,位于F島的核電站足陨,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏娇未。R本人自食惡果不足惜钠右,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望忘蟹。 院中可真熱鬧飒房,春花似錦、人聲如沸媚值。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽褥芒。三九已至嚼松,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間锰扶,已是汗流浹背献酗。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留坷牛,地道東北人罕偎。 一個月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像京闰,于是被迫代替她去往敵國和親颜及。 傳聞我的和親對象是個殘疾皇子甩苛,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內(nèi)容

  • (五)舊的年代,女方要求男方必須準(zhǔn)備成匹的布俏站,當(dāng)事家的母親在這個時(shí)候便會坐在織布機(jī)下讯蒲,來往穿梭,經(jīng)過一個冬天的忙碌...
    西嶺布衣閱讀 226評論 0 1