SHOW [FULL] SLOW [WHERE expr] [limit expr]
執行時間超過1秒的SQL語句是慢SQL,邏輯慢SQL是指應用發送到PolarDB-X的慢SQL。
-
: 檢視自PolarDB-X啟動或者上次執行SHOW SLOW
CLEAR SLOW
以來最慢的100條邏輯慢SQL;
說明 此處記錄的是最慢的100個,緩存在PolarDB-X 系統中,當執行個體重新開機或者執行
時會丢失。CLEAR SLOW
-
: 檢視執行個體啟動以來記錄的所有邏輯慢SQL(持久化到PolarDB-X的内置資料庫中)。該記錄數有一個上限(具體數值跟購買的執行個體規格相關),PolarDB-X會滾動删除比較老的慢SQL語句。執行個體的規格為4C4G時,最多記錄10000條慢SQL語句(包括邏輯慢SQL和實體慢SQL);執行個體的規格為8C8G時,最多記錄20000條慢SQL語句(包括邏輯慢SQL和實體慢SQL),其它規格依此類推。SHOW FULL SLOW
示例:
mysql> show slow where execute_time > 1000 limit 1;
+-----------+---------------------+--------------+------------+-----------+
| HOST | START_TIME | EXECUTE_TIME | AFFECT_ROW | SQL |
+-----------+---------------------+--------------+------------+-----------+
| 127.0.0.1 | 2016-03-16 13:02:57 | 2785 | 7 | show rule |
+-----------+---------------------+--------------+------------+-----------+
1 row in set (0.02 sec)
重要列詳解:
- HOST:來源IP;
- START_TIME:執行開始時間;
- EXECUTE_TIME:執行時間;
- AFFECT_ROW:對于DML語句是影響行數;對于查詢語句是傳回的記錄數。
SHOW [FULL] PHYSICAL\_SLOW [WHERE expr] [limit expr]
執行時間超過1秒的SQL語句是慢SQL,實體慢SQL是指PolarDB-X發送到RDS的慢SQL。
-
SHOW PHYSICAL_SLOW
以來最慢的100條實體慢SQL(注意,這裡記錄的是最慢的100個,緩存在PolarDB-X系統中,當執行個體重新開機或者執行CLEAR SLOW時會丢失);CLEAR SLOW
-
: 檢視執行個體啟動以來記錄的所有實體慢SQL(持久化到PolarDB-X的内置資料庫中)。該記錄數有一個上限(具體數值跟購買的執行個體規格相關),PolarDB-X會滾動删除比較老的慢SQL語句。執行個體的規格如果是4C4G,最多記錄10000條慢SQL語句(包括邏輯慢SQL和實體慢SQL);執行個體的規格如果是8C8G,最多記錄20000條慢SQL語句(包括邏輯慢SQL和實體慢SQL),其它規格依此類推。SHOW FULL PHYSICAL_SLOW
mysql> show physical_slow;
+----------------+-----------------------------------+---------------------+--------------+------------------+-------------------------+------------------------+------------+-----------------+
| GROUP_NAME | DBKEY_NAME | START_TIME | EXECUTE_TIME | SQL_EXECUTE_TIME | GETLOCK_CONNECTION_TIME | CREATE_CONNECTION_TIME | AFFECT_ROW | SQL |
+----------------+-----------------------------------+---------------------+--------------+------------------+-------------------------+------------------------+------------+-----------------+
| TDDL5_00_GROUP | db218249098_sqa_zmf_tddl5_00_3309 | 2016-03-16 13:05:38 | 1057 | 1011 | 0 | 0 | 1 | select sleep(1) |
+----------------+-----------------------------------+---------------------+--------------+------------------+-------------------------+------------------------+------------+-----------------+
1 row in set (0.01 sec)
- GROUP_NAME:資料庫分組;
CLEAR SLOW
清空自PolarDB-X啟動或者上次執行
CLEAR SLOW
以來最慢的100條邏輯慢SQL和最慢的100條實體慢SQL。
mysql> clear slow;
Query OK, 0 rows affected (0.00 sec)
說明
SHOW SLOW
和
SHOW PHYSICAL_SLOW
展示的是最慢的100個SQL,如果長時間未執行
CLEAR SLOW
,可能是非常老的SQL,一般執行過SQL優化之後,建議執行
CLEAR SLOW
後,等待系統運作一段時間,再檢視慢SQL的優化效果。