pt-kill 杀死mysql 死锁

来源:互联网 时间:2017-07-29

pt-kill杀死MySQL连接。 pt-kill连接到MySQL,如果没有给出FILE,则从SHOW PROCESSLIST获取查询。否则,它从一个或多个FILE读取包含SHOW PROCESSLIST输出的查询。如果FILE是 - , pt-kill从STDIN读取。

先给一个成熟使用的命令

/home/percona-toolkit-2.2.19/bin/pt-kill --log-dsn D=testdb,t=kill_log --create-log-table --host=172.16.1.2--user=root --password=passwd --port=3306 --busy-time=30 --print --kill-query --match-info "SELECT|select"  --victims all

命令的解释:  杀死运行30秒以上的 select 语句,将kill 记录打印记录到 数据库 testdb 的biao  kill_log 里面

几个重要参数

--busy-time   运行时间

--match-info  匹配查询

--daemonize  放在后台以守护进程的形式运行;
--interval  多久运行一次,单位可以是s,m,h,d等默认是s
--victims 默认是oldest,只杀最古老的查询。这是防止被查杀是不是真的长时间运行的查询,他们只是长期等待。这种种匹配按时间查询,杀死一个时间最高值。
               all 杀掉所有满足的线程
               杀死所有,但最长的保留不杀


action
--kill                 杀掉连接并且退出
--kill-query           只杀掉连接执行的语句,但是线程不会被终止
--print                打印满足条件的语句


相关阅读:
Top