国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL中mysqldumpslow分析查詢慢sql語句

2024-07-24 12:39:11
字體:
來源:轉載
供稿:網友

現在很多程序員在設計數據庫與開發程序時都不會考慮到大負載,有時一點數據量就出現了卡機,這樣越到后面越難查了,下面我們來給出一個mysql自帶的工具mysqldumpslow來幫你查出查詢慢的sql語句.

對于大多數的程序員來說,最容易發現并解決的問題就是MySQL的慢查詢或者沒有利用索引的查詢,所以這里主要給大家介紹如何利用官方的mysqldumpslow工具方便的查看這些信息,如何打開MySQL的慢查詢.

MySQL的慢查詢記錄

SHOW STATUS:直接在命令行下登陸MySQL運行SHOW STATUS;查詢語句,詳細如下.

同樣的語句還有SHOW VARIABLES;,SHOW STATUS是查看MySQL運行情況,和上面那種通過pma查看到的信息基本類似.

SHOW VARIABLES:SHOW VARIABLES是查看MySQL的配置參數,還可以使用類似SHOW VARIABLES LIKE 'Key%'

SHOW PROCESSLIST:SHOW PROCESSLIST是查看當前正在進行的進程,對于有鎖表等情況的排查很有用處,一般情況下,打開MySQL的慢查詢記錄同樣有利于排查.

SHOW OPEN TABLES:SHOW OPEN TABLES是顯示當前已經被打開的表列表。

mysqladmin status

使用MySQL自帶的mysqladmin 工具查看status,使用以下命令:

mysqladmin -uroot --password='password' status

顯示的結果如下:

Uptime: 87117 Threads: 1 Questions: 5481626 Slow queries: 16 Opens: 2211 Flush tables: 1 Open tables: 512 Queries per second avg: 62.923

另外可以添加 -i 5 參數,讓其每五秒自動刷新之,代碼如下:

  1. mysqladmin -uroot --password='password' status -i 5  
  2. mysqladmin extended-status   --Vevb.com

同樣的可以使用mysqladmin -uroot --password='password' extended-status來查看更多的MySQL運行信息,這種方式和第一種查看的信息基本一樣.

好了再回歸文件,mysqldumpslow命令:

/path/mysqldumpslow -s c -t 10 /database/mysql/slow-log

這會輸出記錄次數最多的10條SQL語句,其中:

-s, 是表示按照何種方式排序,c、t、l、r分別是按照記錄次數、時間、查詢時間、返回的記錄數來排序,ac、at、al、ar,表示相應的倒敘; 

-t, 是top n的意思,即為返回前面多少條的數據; 

-g, 后邊可以寫一個正則匹配模式,大小寫不敏感的; 

比如,代碼如下:

/path/mysqldumpslow -s r -t 10 /database/mysql/slow-log

得到返回記錄集最多的10個查詢,代碼如下:

/path/mysqldumpslow -s t -t 10 -g “left join” /database/mysql/slow-log

得到按照時間排序的前10條里面含有左連接的查詢語句.

小結:使用mysqldumpslow命令可以非常明確的得到各種我們需要的查詢語句,對MySQL查詢語句的監控、分析、優化是MySQL優化的第一步,也是非常重要的一步.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 清徐县| 锦州市| 鹿邑县| 甘孜| 万源市| 梨树县| 松阳县| 双牌县| 平顶山市| 庆城县| 永清县| 大石桥市| 外汇| 儋州市| 铁岭市| 蓬溪县| 巫溪县| 宝山区| 阳泉市| 峨边| 泊头市| 桐城市| 城口县| 中西区| 富阳市| 万源市| 城口县| 宁明县| 乐业县| 绥江县| 板桥市| 晋中市| 玛曲县| 玛沁县| 陆川县| 景谷| 宜州市| 天峻县| 宁武县| 额尔古纳市| 梨树县|