是否有一些配置可以在MySQL端執行,以自動終止或超時非常慢的查詢,比如說100秒。在MySQL中自動終止/超時緩慢查詢
2
A
回答
0
從MySQL 5.1開始,您可以創建一個存儲過程來查詢與您的條件相匹配的所有查詢(您的案例中的「長時間運行時間」)的information_schmea.PROCESSLIST表。在查詢processlist表時,只需遍歷遊標即可殺死超出超時條件的正在運行的查詢進程。
看看下面的例子:程序查找並終止所有非SUPER比N秒運行更長的「系統帳戶」查詢
0
你應該結帳的percona toolkit
命令 pt-kill
1
您可以列出所有通過下面的命令你的MySQL查詢:
$ mysqladmin processlist
所以你可以運行一些腳本來解析這個列表,並且它會終止特定的查詢。
在例子中,你可以用任何語言通過cron運行一些腳本,以定期檢查長的查詢,如:
$result = mysql_query("SHOW FULL PROCESSLIST");
while ($row=mysql_fetch_array($result)) {
$process_id=$row["Id"];
if ($row["Time"] > 200) {
$sql="KILL $process_id";
mysql_query($sql);
}
}
又如:
mysql> select concat('KILL ',id,';') from information_schema.processlist
where user='root' and time > 200 into outfile '/tmp/a.txt';
mysql> source /tmp/a.txt;
相關:
瞭解更多:
相關問題
- 1. MySQL緩慢查詢
- 2. MySQL緩慢查詢
- 3. MySQL緩慢查詢
- 4. mysql緩慢查詢
- 5. MySql查詢超慢
- 6. MySQL慢查詢日誌 - 緩慢多慢?
- 7. 在MySQL中非常緩慢的查詢
- 8. 簡單查詢在Mysql中緩慢
- 9. MySQL緩慢查詢失敗
- 10. mysql查詢運行緩慢
- 11. 緩慢的MySQL SELECT查詢
- 12. MySql緩慢併發查詢
- 13. MySQL緩慢查詢優化
- 14. MySQL緩慢查詢'COUNT'
- 15. MySQL緩慢查詢和memcached
- 16. MySQL查詢隨機緩慢
- 17. MySQL緩慢子查詢
- 18. 緩慢的MySQL查詢
- 19. MySQL查詢緩慢運行
- 20. MySQL緩慢查詢〜10秒
- 21. 緩慢*初始* mysql查詢
- 22. MySQL查詢變得緩慢
- 23. MySQL加入緩慢查詢
- 24. 緩慢的mysql查詢
- 25. MYSQL GROUP BY - 緩慢查詢
- 26. 緩慢UNION查詢 - MySQL
- 27. MySQL - 視圖 - 超慢查詢
- 28. MySQL查詢速度太慢或超時
- 29. Linux Mint在系統啓動時緩慢地在mysql上查詢
- 30. mysql查詢查詢速度緩慢
你需要小心的是,因爲如果你設置類似的東西在全球範圍內運營總有上一大桌殺死了重新編制風險反過來可能會導致腐敗。你可以做的是將超時添加到與MySQL服務器連接的應用程序的連接字符串中 – 2012-02-22 14:43:55