慢查詢日誌就像它的名字,記錄查詢速度慢時間長的sql
簡析慢查詢 |
慢查詢日誌在我看來就是跑的慢的會被抓起來記錄一下
什麼是慢查詢日誌
- Mysql的慢查詢日誌是Mysql提供的一種日誌記錄,它用來記錄Mysql中響應超過闕值的語句,具體指運行時間超過long_query_time值的SQL,則會被記錄到慢查詢日誌中
- 具體指運行時間指long_query_time參數,默認值爲10,意思是運行時間在10秒以上的語句
- 默認沒有開啓慢查詢日誌,需要手動設置,如果不是測試調優,一般不開啓,因爲會帶來性能的影響
實戰
查詢日誌狀態
mysql> show variables like '%slow_query_log%';
暫時開啓
set global slow_query_log=1;
永久開啓
修改my.cnf配置文件,在[mysqld]下增加或者修改參數slow_query_log和slow_query_log_file後,重啓Mysql服務器
slow_query_log=1
slow_query_log_file=/var/lib/mysql/slow.log # 日誌路徑
查看慢查詢閾值
show variables like 'long_query_time%';
簡析全局日誌查詢 |
測試環境下還可以開啓一個全局查詢日誌,會記錄所有你執行過的sql以供分析
實踐
開啓
set global general_log=1;
輸出爲一個表
set golobal log_output='TABLE';
查看記錄
select * from mysql.general_log;
小結
mysql提供了完善的日誌查詢,大家可以多多實踐