MySQL慢查詢日誌的配置與使用

2021-10-07 22:58:07 字數 1887 閱讀 4317

閱讀文字大概需要3分鐘。

mysql慢查詢日誌是我們在日常工作中經常會遇到的乙個功能,mysql慢查詢日誌提供了超過指定時間閾值的查詢資訊,為效能優化提供了主要的參考依據,是乙個非常實用的功能,mysql慢查詢日誌的開啟和配置非常簡單,可以指定記錄的檔案(或者表),超過的時間閾值等就可以記錄到慢sql了,實話講,相比較sqlserver的trace或者擴充套件事件(雖然此二者的作用並非僅僅如此),mysql的配置總是給人一種非常清爽的感覺。

一、慢查詢日誌的開啟

正常情況下,只需要在配置檔案中增加slow_query_log = 1配置,即開啟慢查詢日誌,未指定slow_query_log_file的情況下,會自動生成乙個以主機名+『slow'.log 的檔案。

二、預設情況下記錄慢查詢的時間閾值為10s

預設情況下,指定slow_query_log = 1的情況其啟動mysql,即可開啟慢查詢,自動生成乙個預設的以主機名++『slow'.log 的檔案來記錄超過執行超過10s的慢查詢。

也可以顯式指定慢查詢的日誌檔名稱(不存在會自動建立)和記錄慢查詢的時間閾值(非預設的10s)。

注意:在配置檔案中指定long_query_time的時候,不需要時間單位,只需要乙個值,比如1就代表1s,如果帶了時間單位,服務將無法啟動。

如下是乙個記錄到日誌檔案中的慢sql的示例

三、記錄慢查詢日誌到表

配置:需要新增乙個log_output的配置,就可以將慢查詢記錄到表中了

mysql庫下面有乙個預設的slow_log表,可以直接將slow_query_log_file = slow_log,即可將慢查詢日誌記錄到表中。

記錄到的slow sql如下,可以發現sql_text是乙個二進位制的資訊,並非原始的sql文字

可以通過convert函式轉換一下即可。

關於慢查詢記錄到日誌檔案和表中的區別:

往期精彩

01 sentinel如何進行流量監控

02 nacos原始碼編譯

03 基於apache curator框架的zookeeper使用詳解

04 spring boot專案整合xxl-job

05 網際網路支付系統整體架構詳解

關注我每天進步一點點

喜歡!在看☟

mysql慢查詢的使用 mysql 慢查詢使用指南

慢查詢顧名思義就是查詢比較慢的查詢,所以它是相對不是絕對的。1.檢視慢查詢狀態 我們先看一下慢查詢日誌有沒有被開啟,命令列介面輸入 show variables like slow query 2.檢視慢查詢時間 檢視我慢查詢設定的時間,命令列介面輸入 show variables like lon...

MySQL 慢查詢日誌配置與簡析

mysql慢查詢日誌配置與簡析 by 授客qq 1033553122 1 檢視是否開啟 慢查詢 日誌 說明 a.如果slow query log引數值為 off則表示沒開啟,如果為 on則表示開啟 b.slow query log file 引數值為慢查詢日誌存放路徑與名稱 5.6及以上版本 可以不...

MySQL慢查詢日誌的配置與使用教程

前言 mysql慢查詢日誌是我們在日常工作中經常會遇到的乙個功能,mysql慢查詢日誌提供了超過指定時間閾值的查詢資訊,為效能優化提供了主要的參考依據,是程式設計客棧乙個非常實用的功能,mysql慢查詢日誌的開啟和配置非常簡單,可以指定記錄的檔案 或者表 超過的時間閾值等就可以記錄到慢sql了,實話...