Mysql
有關執行了哪些查詢以及執行次數的統計資訊
我想監控某些查詢執行了多少次。看看下面的 3 個查詢,第二個和第三個是寫成prepared statement。
SELECT COUNT(*) FROM TABLE1 UPDATE TABLE2 SET `last_parsed` = NOW() WHERE `id` = ? SELECT 1 FROM TABLE2 WHERE (`last_parsed` IS NULL OR `last_parsed` < DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 7 DAY)) AND `id` = ?
mariadb/mysql dbms 是否跟踪每個查詢的執行次數?它是否將準備好的語句分組到一個列表中,以便如果
id
是 10 或 20,它們都顯示在同一類別下?
MySQL 和 MariaDB…
計劃 A:開啟慢日誌。有
long_query_time = 0
。用於pt-query-digest
匯總日誌。(這還將提供有關性能不佳的查詢的資訊。)B計劃:開啟通用日誌。用於
pt-query-digest
匯總日誌。注意:這兩種技術都使用大量磁碟空間,並且不會自行清理。也就是說,您將需要處理使用的磁碟空間。如果你執行了很長時間。
“摘要”刪除了實際的數字和字元串值。即“… WHERE x=2”和“… WHERE x=987”被認為是“相同的”。如果您需要“相同”來包含相同的值,那麼您應該計劃使用通用日誌並進行自己的後處理。