亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

MySQL 慢查詢日志深入理解

瀏覽:12日期:2023-10-03 17:31:26
什么是慢查詢日志

MySQL的慢查詢日志是 MySQL提供的一種日志記錄,它用來記錄在 MySQL 中響應時間超過閥值的語句,具體指運行時間超過long_query_time 值的 SQL,則會被記錄到慢查詢日志中

具體指運行時間超過 long_query_time 值的 SQL,則會被記錄到慢查詢日志中。long_query_time 的默認值為 10, 意思是運行 10 秒以上的語句

由它來查看哪些 SQL 超出了我們的最大忍耐時間值,比如一條SQL執行超過 5 秒鐘,我們就算慢 SQL,希望能收集超過 5 秒的SQL,結合之前explain進行全面分析

默認情況下,MySQL 數據庫沒有開啟慢?搜?罩荊?枰?頤鞘侄?瓷柚謎飧霾問?5比唬?綣?皇塹饔判枰?幕埃?話悴喚ㄒ櫧舳?貌問??蛭??袈?檠?罩凈嶧蚨嗷蟶俅?匆歡ǖ男閱苡跋?。?搜?罩局С紙?罩炯鍬夾慈胛募??/p>如何開啟慢查詢

查看開啟狀態

SHOW VARIABLES LIKE ’%slow_query_log%’

MySQL 慢查詢日志深入理解

開啟慢查詢

set global slow_query_log = 1

使用 set global_slow_query_log = 1 開啟了慢查詢日志只對當前數據庫生,如果 MYSQL 重啟后則會失效。

MySQL 慢查詢日志深入理解

如果要永久生效,就必須修改配置文件 my.cnf(其它系統變量也是如此)修改 my.cnf 文件,[mysqld]下增加或修改參數

slow_query_log 和 slow_query_log_file 后,然后重啟 MySQL 服務器。也即將如下兩行配置進my.cnf文件

slow_query_log =1slow_query_log_file=/var/lib/mysql/tim-slow.log

關于慢查詢的參數 slow_query_log_fie,它指定慢查詢日志文件的存放路徑,系統默認會給一個缺省的文件host_name-slow.log(如果沒有指定參數 slow_query_log_file的話)

那么開啟慢查詢日志后,什么樣的SQL參會記錄到慢查詢里面?

通過 show variables like ‘long_query_time%’ 來查看默認時間長度,單位是秒:

MySQL 慢查詢日志深入理解

同樣的,可以使用命令修改,也可以在my.cnf里面配置。假如運行時間正好等于 long_query_time 的情況,并不會被記錄下來。也就是說,在MySQL源碼里是判斷大于 long_query_time,而非大于等于!

設置記錄的閾值:

set global long_query_time=3;

同樣的,可以使用命令修改,也可以在my.cnf里面配置。假如運行時間正好等于 long_query_time 的情況,并不會被記錄下來。也就是說,在MySQL源碼里是判斷大于 long_query_time,而非大于等于!

設置記錄的閾值:

set global long_query_time=3;

MySQL 慢查詢日志深入理解

設置了但是還是沒有發生更改?為什么?此時需要重新開啟一個會話才可以:

MySQL 慢查詢日志深入理解

接下來實行一個較慢的查詢,如下圖,但是記得要在配置文件中做如下配置:

MySQL 慢查詢日志深入理解

接著去日志文件中查看存在哪些超過閾值的SQL就好了:

MySQL 慢查詢日志深入理解

查詢當前系統中有多少條慢查詢記錄:

MySQL 慢查詢日志深入理解

記載一下我的配置文件

slow_query_log=1;slow_query_log_file=/var/lib/mysql/tim-slow.log;long_query_time=3;log_output=FILE日志分析工具mysqldumpshow

MySQL 慢查詢日志深入理解

在生產環境中,如果要手工分析日志,查找、分析 SQL,顯然是個體力活,MYSQL 提供了日志分析工具mysqldumpshow

s:是表示按何種方式排序 c:訪問次數 l:鎖定時間 r:返回記錄 t:查詢時間 al:平均鎖定時間 ar:平均返回記錄數 at:平均查詢時間 t:即為返回前面多少條的數據 g:后邊搭配一個正則匹配模式,大小寫不敏感的

下面是使用示例:

得到返回記錄集最多的 10 個 SQL

mysqldumpslow -s r -t 10 /var/lib/mysql/tim-slowlog

得到訪問次數最多的 10 個 SQL

mysqldumpslow -s c-t 10 /var/lib/mysql/tim-slow log

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

mysqldumpslow -s t -t 10 -g 'left join' /var/lib/mysql/tim-slowlog

另外建議在使用這些命令時結合和 more 使用,否則有可能出現爆屏情?r

mysqldumpslow -s r -t 10 /var/lib/mysq/tim-slow.log | more

以上就是MySQL 慢查詢日志深入理解的詳細內容,更多關于MySQL 慢查詢日志的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 欧美一级毛片免费高清aa | 日本高清aⅴ毛片免费 | 久久综合中文字幕一区二区 | 国产资源网站 | 好爽快一点视频在线观看 | 国产精品二区页在线播放 | 片在线观看视频免费 | 一级一级特黄女人精品毛片视频 | 国产精品久久二区三区色裕 | 国产成人yy免费视频 | 超级成人97碰碰碰免费 | 亚洲乱淫| 免费一级a毛片夜夜看 | 欧美a级片在线观看 | 欧美黑人粗硬大在线看 | 成人在线视频一区 | 一区二区三区四区在线观看视频 | 成人欧美午夜视频毛片 | 成人国产一区二区三区精品 | 色一色综合 | 1024人成网色www | 久久a级片 | 黄色在线观看网址 | 久久精品国产精品青草 | 二级黄色大片 | 高清国产亚洲va精品 | 免费黄网站 | 欧美日韩在线播放一区二区三区 | 国产dvd毛片在线视频 | 国产一级理论免费版 | 999精品久久久中文字幕蜜桃 | 综合激情区视频一区视频二区 | japanese日本护士xx亚洲 | 黄色网址在线免费看 | 国产精品永久免费视频 | 亚洲午夜精品一级在线 | 国产一区二区免费在线观看 | 免费观看欧美一级高清 | 亚洲国产成人久久精品图片 | 人人草人人澡 | 美女拍拍拍无遮挡 |