MySQL慢查詢日誌如何開啟以及分析

2022-09-09 14:30:27 字數 2056 閱讀 1705

1、mysql慢查詢日誌是什麼

(1)mysql的慢查詢日誌是mysql提供的一種日誌記錄,它用來記錄mysql中查詢時間超過(大於)設定閾值(long_query_time)的語句,記錄到慢查詢日誌中。

(2)long_query_time的預設值是10。

2、如何開啟mysql慢查詢日誌

預設情況下,mysql沒有開啟慢查詢日誌。需要手動開啟,如果不是調優需要的話,不建議開啟,因為開啟會帶來一定的效能影響,慢查詢日誌支援將日誌記錄寫入檔案。

(1)開啟設定

-- 檢視慢查詢日誌是否開啟

-- 開啟慢查詢日誌,只對當前資料庫生效,並且重啟資料庫後失效

-- 檢視慢查詢日誌的閾值,預設10s

-- 設定閾值

set long_query_time =

3;

(2)如果需要永久生效則修改配置檔案my.cnf

[mysqld]

slow_query_log=1

slow_query_log_file=/var/lib/mysql/atguigu-slow.log

long_query_time=3

log_output=file

(3)執行慢查詢sql,檢視慢查詢日誌

select sleep(4)

;

(4)查詢當前系統有多少條慢查詢記錄

3、日誌分析工具mysqldumpslow

慢查詢日誌多了,不利於我們進行分析。mysqldumpslow能將相同的慢sql歸類,並統計出相同的sql執行的次數,每次執行耗時多久、總耗時,每次返回的行數、總行數,以及客戶端連線資訊等。

通過 --help命令,就能知道如何使用mysqlsumpslow

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

mysqldumpslow -s r -t 10 /var/lib/mysql/atguigu-slow.log

# 得到訪問次數最多的10 個sql

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

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

mysqldumpslow -s t -t 10 -g "left join" /var/lib/mysql/atguigu-slow.log

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

mysqldumpslow -s r -t 10 /var/lib/mysql/atguigu-slow.log |

more

mysql慢查詢日誌 如何開啟MySQL慢查詢日誌

摘要 前言 資料庫日誌記錄了使用者對資料庫的各種操作及資料庫發生的各種事件。能幫助資料庫管理員追蹤 分析問題。mysql提供了錯誤日誌 二進位制日誌 查詢日誌 慢查詢日誌。mysql的慢查詢日誌是mysql提供的一種日誌記錄,它用來記錄在mysql中響應時間超過閥值 long query time,...

如何開啟 mysql 慢查詢日誌

使用 mysql 命令方式開啟 檢視慢查詢日誌是否開啟 show variables like slow query log variable name value slow query log off 1 row in set 0.06 sec 與之相關的配置引數 slow query log 慢...

如何開啟MySQL慢查詢日誌

資料庫日誌記錄了使用者對資料庫的各種操作及資料庫發生的各種事件。能幫助資料庫管理員追蹤 分析問題。mysql提供了錯誤日誌 二進位制日誌 查詢日誌 慢查詢日誌。mysql的慢查詢日誌是mysql提供的一種日誌記錄,它用來記錄在mysql中響應時間超過閥值 long query time,單位 秒 的...