是否有可能讓mysql,需要超過突然想到說20秒後自動殺死查詢?MySQL的自動殺查詢
回答
我猜你正在尋找maatkit實用叫MK-殺,將殺死符合某些條件的查詢。
做,我們需要安裝任何東西????或者我們可以簡單地執行這個命令,cuz對我來說它說,mk-kill命令沒有找到 –
該工具現在被稱爲'pt-kill',來自Percona。您將需要安裝它。請參閱http://www.percona.com/software/percona-toolkit –
它可以編寫一個程序做的。您的程序將使用SHOW PROCESSLIST
來發現當前正在運行的查詢以及它們運行的時間,然後發出KILL
查詢來終止一個查詢。
安裝RubyGem mysql_manager
(sudo gem install mysql_manager
),然後像這樣添加一個命令添加到crontab:
mysql-manager --kill --kill:user api --kill:max-query-time 30 --log:level DEBUG
更多選項,運行mysql-manager --help
。
您可能需要指定替代方案--db:dsn
,--db:username
或--db:password
。
瞭解更多關於在這裏:https://github.com/osterman/mysql_manager
要根據自己的thread_id嘗試查詢和人工捕殺他們殺了查詢,
SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST WHERE COMMAND = 'Query' AND TIME > 10;
的替代性和互動的方式將輸出的值到文件中使用的查詢,
SELECT CONCAT('KILL ',ID,';')
FROM INFORMATION_SCHEMA.PROCESSLIST
WHERE USER = ‘new’
AND COMMAND = 'Query'
AND TIME > 10
INTO OUTFILE '/tmp/thread_kill.txt';
,然後使用殺文件中的線程,
\. /tmp/thread_kill.txt
另一種方法是尋找像Percona工具包,MONyog,MySQL Enterprise Monitor這樣的監視工具,您可以讓工具查找更長/更慢的查詢,鎖定查詢並殺死它們。通過MONyog,額外的優勢是不僅可以殺死緩慢的查詢,還可以通過電子郵件通知用戶哪些查詢阻止了資源並使服務器變慢。
- 1. 在python中自動殺死Mysql查詢
- 2. MySQL查詢殺死腳本
- 3. MySQL查詢查殺我的服務器
- 4. 自動計算MySQL查詢
- 5. 如何殺死鎖定的mysql查詢
- 6. MySQL ORDER BY殺死我的SQL查詢
- 7. MySQL查詢被殺 - 如何防止?
- 8. 如何自動殺死緩慢的MongoDB查詢?
- 9. 如何殺死來自C#驅動程序的長查詢 - mongodb
- 10. 查詢自MySQL中
- 11. 危險殺死自動清理:真空查詢(防止環繞)
- 12. MySQL自動導入Web查詢IQY
- 13. 從MYSQL表AJAX自動完成查詢
- 14. 在mysql中自動運行查詢
- 15. 使用查詢自動填充php mysql
- 16. 自動填充搜索查詢mysql
- 17. MySQL查詢錯誤 - 自動硬幣ADD
- 18. MYSQL自動更新第二表查詢
- 19. 來自python的MySQL查詢
- 20. MySql的自引用查詢
- 21. 動態MySQL查詢
- 22. 動態MySQL查詢?
- 23. 動態查詢MySQL
- 24. MySQL中的動態查詢
- 25. Mysql的動態查詢
- 26. 無法殺死Postgres查詢
- 27. MYSQL - 來自多個查詢
- 28. 自定義MySql查詢
- 29. 如何從MySQL複製中自動恢復MySQL查詢錯誤?
- 30. Doctrine查詢的自動iconv
你的意思是中止運行一個查詢?類似於「Ctrl c」?或者你的意思是編程20秒後自動中止? –
如果查詢了超過20秒這是危險的是一個寫操作,這可能會導致表損壞 – ajreal
@ajreal:如果是這樣的情況下,MySQL應該修復這個bug。當您取消查詢時,表格永遠不會損壞。 dbms應該是可靠的,這就是爲什麼你首先使用dbms的原因。 [設置MySQL查詢超時]的 –