wget https://www.percona.com/downloads/percona-toolkit/3.0.10/binary/tarball/percona-toolkit-3.0.10_x86_64.tar.gz
    tar zxvf percona-toolkit-3.0.10_x86_64.tar.gz

    yum install perl-DBD-MySQL
    yum install perl-ExtUtils-Embed -y
    yum install perl-Digest-MD5
    yum install perl-devel

    cd percona-toolkit-3.0.10
    perl Makefile.PL
    make
    make install
    安装后工具目录: /usr/local/bin
    a.pt-kill
    —victims all需要有,否则只会处理一个连接(最早连上数据库的那个),
    —interval 30 默认每30秒循环执行一次,可以根据实际情况调整,如果不加,只执行一次;加上的话,会在后台不停的执行。
    默认会过滤掉复制线程,请不必担心杀掉复制线程。
    —run-time,如果指定此项,则执行指定长的时候,否则以循环时间每多次时间执行一次。
    —help可以查看帮助信息,除了—busy-time与—idle-time是否定的关系,只能选择一个;其余各个选项是并的关系,是A且B的关系,—ignore选项与—match信息可以一起使用。
    使用的重点即是—ignore 与 —match的灵活结合
    下面是help内容的部分信息,可以用来限制杀掉连接的条件。
    —database (No value)
    —defaults-file (No value)
    —each-busy-time (No value)
    —execute-command (No value)
    —filter (No value)
    —group-by (No value)
    —help TRUE
    —host localhost
    —idle-time (No value)
    —ignore-command (No value)
    —ignore-db (No value)
    —ignore-host (No value)
    —ignore-info (No value)
    —ignore-self TRUE
    —ignore-state Locked
    —ignore-user (No value)
    —interval 30
    —kill FALSE
    —kill-query FALSE
    —log (No value)
    —log-dsn (No value)
    —match-all FALSE
    —match-command (No value)
    —match-db (No value)
    —match-host (No value)
    —match-info (No value)
    —match-state (No value)
    —match-user (No value)
    — 每10秒杀掉所有sleep超过200秒的连接,并打印
    /usr/local/bin/pt-kill —idle-time 200 —victims all —interval 10 -S
    /var/lib/mysql/mysql.sock -uroot -p111111 —kill —print
    — 每10秒杀掉主机为127.0.0.1 所有sleep超过200秒的连接,并打印
    /usr/local/bin/pt-kill —match-host=’127.0.0.1’ —idle-time 200 —victims all —interval 10 -S
    /var/lib/mysql/mysql.sock -uroot -p123456 —kill —print
    — 每10秒杀掉连接dbhospital 所有sleep超过200秒的连接,并打印
    /usr/local/bin/pt-kill —match-db=’hospital’ —idle-time 200 —victims all —interval 10 -S
    /var/lib/mysql/mysql.sock -uroot -p123456 —kill —print
    — 每10秒杀掉执行时间超过特定时间、特定sql(5秒)的连接
    /usr/local/bin/pt-kill —busy-time=1 —match-info=’SELECT|select|Select’ —victims all —interval 10 -S
    /var/lib/mysql/mysql.sock -uroot -p123456 —kill —print
    杀死pt-kill 进程
    kill -9 $(ps -ef| grep pt-kill |grep -v grep |awk ‘{print $2}’)