Mysql-性能分析-Profiling

是什么

Show Profile是mysql提供可以用來分析當(dāng)前會話中語句執(zhí)行的資源消耗情況杰扫,可以用于Sql調(diào)優(yōu)的測量。

怎么玩

  1. 先查看是否開啟了此功能:show variables like 'profiling%';
    默認(rèn)情況下膘掰,參數(shù)出于關(guān)閉狀態(tài)章姓,為OFF狀態(tài)
  2. 開啟Profilingset profiling=1;
    開啟此功能后,就能執(zhí)行我們的SQL語句
  3. 展示最近的SQL執(zhí)行情況:show profiles;
    此命令展示最近執(zhí)行的sql語句识埋,默認(rèn)是15次啤覆,一個(gè)示例如下:
    展示最近的15條

    Query_ID會一直遞增,后期我們會使用這個(gè)id惭聂,來具體查詢某一條SQL的執(zhí)行耗時(shí)清單
  4. 具體查看某一條SQL的執(zhí)行細(xì)節(jié):show profile cpu,block io for query 8;
    如下圖為查詢id=8的這條sql的執(zhí)行細(xì)節(jié),此處查詢了cpublock io這兩種類型相恃,其他可以選擇的類型在圖的下面展示:
    SQL執(zhí)行具體細(xì)節(jié)

    可以使用的類型如下:

ALL辜纲;顯示所有的開銷信息
BLOCK IO:顯示塊IO相關(guān)開銷
CONTEXT SWITCHES:上下文切換相關(guān)開銷
CPU:顯示CPU相關(guān)開銷
IPC:顯示發(fā)送和接受相關(guān)開銷
MEMORY:顯示內(nèi)存相關(guān)開銷
PAGE FAULTS:顯示頁面錯(cuò)誤相關(guān)開銷
SOURCE:顯示和Source_function, Source_file,Source_line相關(guān)的相關(guān)開銷
SWAPS:顯示交換次數(shù)相關(guān)開銷

應(yīng)該重點(diǎn)關(guān)注什么

請讀者繼續(xù)看前面的圖SQL執(zhí)行具體細(xì)節(jié),左邊Status列展示了一條SQL執(zhí)行的從開始到清理的整個(gè)生命周期中執(zhí)行的操作。如果在其生命周期階段出現(xiàn)如下的情況的就要重視了:

  1. converting HEAP to MyISAM :查詢結(jié)果太大耕腾,內(nèi)存都不夠用了往磁盤上面搬了
  2. Creating tmp table :創(chuàng)建了臨時(shí)表见剩,先拷貝到臨時(shí)表,用完后再刪除
  3. Copying to tmp table on disk:把內(nèi)存中的臨時(shí)表復(fù)制到磁盤中扫俺,這個(gè)很耗性能
  4. locked :這個(gè)就是指在等待鎖的意思
    可以看看如下Creating tmp table的樣例
    Creating tmp table的樣例

總結(jié)

開啟Profiling后苍苞,mysql會留下15條最近執(zhí)行的sql的現(xiàn)場, 便于我們發(fā)現(xiàn)問題。

Show profiles用來查最近的15條狼纬。

Show profile用來展示每一個(gè)SQL執(zhí)行階段的耗時(shí)清單羹呵,便于我們發(fā)現(xiàn)耗時(shí)最多的地方,然后以此為依據(jù)查找問題所在疗琉,最后優(yōu)化SQL或者優(yōu)化mysql參數(shù)冈欢。比如耗時(shí)清單創(chuàng)建了臨時(shí)表,就要考慮表是否創(chuàng)建索引盈简,如果創(chuàng)建了那么是否沒有用到或者失效了凑耻。

總的來說Profiling是一個(gè)很不錯(cuò)的mysql性能分析工具。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末柠贤,一起剝皮案震驚了整個(gè)濱河市香浩,隨后出現(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ī)與錄音犹菇,去河邊找鬼。 笑死弦赖,一個(gè)胖子當(dāng)著我的面吹牛项栏,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蹬竖,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼沼沈,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了币厕?” 一聲冷哼從身側(cè)響起列另,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎旦装,沒想到半個(gè)月后页衙,有當(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
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡眨八,死狀恐怖,靈堂內(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. 我叫王不留杂拨,地道東北人专普。 一個(gè)月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像弹沽,于是被迫代替她去往敵國和親檀夹。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評論 2 351

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