Mysql日誌記錄慢查詢的SQL

2021-06-23 00:37:11 字數 947 閱讀 4902

在日常開發當中,經常會遇到頁面開啟速度極慢的情況,通過排除,確定了,是資料庫的影響,為了迅速查詢具體的sql,可以通過mysql的日誌記錄方法。

-- 開啟sql執行記錄功能

set global log_output='table'; -- 輸出到表

set global log=on; -- 開啟所有命令執行記錄功能general_log, 所有語句: 成功和未成功的.

set global log_slow_queries=on; -- 開啟慢查詢sql記錄slow_log, 執行成功的: 慢查詢語句和未使用索引的語句

set global long_query_time=0.1; -- 慢查詢時間限制(秒)

set global log_queries_not_using_indexes=on; -- 記錄未使用索引的sql語句

-- 查詢sql執行記錄

select * from mysql.slow_log order by 1; -- 執行成功的:慢查詢語句,和未使用索引的語句

select * from mysql.general_log order by 1; -- 所有語句: 成功和未成功的.

-- 關閉sql執行記錄

set global log=off;

set global log_slow_queries=off;

-- long_query_time引數說明

-- v4.0, 4.1, 5.0, v5.1 到 5.1.20(包括):不支援毫秒級別的慢查詢分析(支援精度為1-10秒);

-- 5.1.21及以後版本 :支援毫秒級別的慢查詢分析, 如0.1;

-- 6.0 到 6.0.3: 不支援毫秒級別的慢查詢分析(支援精度為1-10秒);

-- 6.0.4及以後:支援毫秒級別的慢查詢分析;

通過日誌中記錄的sql,迅速定位到具體的檔案,優化sql看一下,是否速度提公升了呢?

mysql慢查詢日誌記錄

1,配置開啟 linux 在mysql配置檔案my.cnf中增加 log slow queries var lib mysql slowquery.log 指定日誌檔案存放位置,可以為空,系統會給乙個預設的檔案host name slow.log long query time 2 記錄超過的時間,...

mysql慢查詢日誌記錄

1,配置開啟 linux 在mysql配置檔案my.cnf中增加 log slow queries var lib mysql slowquery.log 指定日誌檔案存放位置,可以為空,系統會給乙個預設的檔案host name slow.log long query time 2 記錄超過的時間,...

開啟mysql慢查詢日誌記錄

mysql慢查詢日誌對於跟蹤有問題的查詢非常有用,可以分析出當前程式裡有很耗費資源的sql語句,那如何開啟mysql的慢查詢日誌記錄呢?其實開啟mysql的慢查詢日誌很簡單,只需要在mysql的配置檔案裡 windows系統是my.ini,linux系統是my.cnf 的 mysqld 下面加上如下...