是否有可能使用mysql自动查询超过20秒的查询?
答案 0 :(得分:2)
我猜您正在寻找名为mk-kill的maatkit实用程序,它会杀死符合特定条件的查询。
答案 1 :(得分:1)
可以编写一个执行它的程序。您的程序将使用SHOW PROCESSLIST
来发现当前正在运行的查询以及它们运行了多长时间,然后发出KILL
查询来终止查询。
答案 2 :(得分:1)
安装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
。