通過慢SQL頁面查詢
訪問RDS執行個體列表,在上方選擇地區,然後單擊目標執行個體ID。
-
在左側導覽列選擇 > 。
-
在慢日誌分析頁簽下,選擇需要查看的時間範圍後,即可查看到對應的慢日誌統計和慢日誌明細。
說明
您也可以訪問RDS執行個體詳情頁的日誌管理頁面,在慢日誌明細頁簽下查看慢日誌明細。
常見問題
什麼樣的SQL會進入RDS MySQL慢日誌中?
-
基於執行時間:執行時間超過參數long_query_time配置閾值的SQL會被記錄到慢日誌中。預設值為1秒,即未調整慢日誌閾值的情況下,執行時間超過1秒的SQL會被記錄。
-
基於索引使用方式:如果參數log_queries_not_using_indexes=ON,即使SQL執行時間未超過long_query_time,未使用索引的SQL也會被記錄到慢日誌中。預設情況下,log_queries_not_using_indexes參數為OFF。
為什麼RDS MySQL慢日誌記錄的SQL執行完成時間與實際SQL執行時間不同?
通常情況下可能是執行SQL語句修改了時區。慢日誌記錄的SQL執行時間的時區,存在會話層級、資料庫層級和系統層級。慢日誌時區設定邏輯如下:
當資料庫存在時區時,以資料庫的時區為準,否則以系統時區為準。當通過SQL語句修改了會話層級的時區時,可能導致慢日誌記錄的時區無法正常轉換,從而出現時間差異。
為什麼SHOW PROCESSLIST查看到的會話SQL執行時間超過了慢日誌閾值,但未被記錄到RDS MySQL慢日誌中?
如果通過SHOW PROCESSLIST查看到的會話SQL執行時間超過慢日誌閾值,但未被記錄到慢日誌中,通常是因為該SQL被手動或自動KILL掉。在這種情況下,對應的SQL不會被記錄到慢日誌明細中。