Percona-Toolkit中pt-kill用法是怎样的呢,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
生产环境中我们时常遇到这样的情况,数据库性能恶劣,需要马上杀掉部分会话,不然数据库就夯死。我们可以先找show processlist的输出来杀会话,但是比较麻烦。pt-kill为我们解决了杀会话问题。
1、每10秒检查一次,发现有 Query 的进程就给干掉
# 只打印每10秒检查一次:(--interval 10)
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-command="Query" --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/1.log
# 执行杀操作并打印日志:
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-command="Query" --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/kill.log
2、查杀select大于30s的会话
# 只打印select大于30s:
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-info "select|SELECT" --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/pt_select.log
# 执行杀操作select大于30s:
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-info "select|SELECT" --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/pt_select_kill.log
# 执行杀操作针对yoon库select大于30s:
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-db='yoon' --match-info "select|SELECT" --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/pt_select_yoon_kill.log
3、查杀某IP来源的会话
# 只打印某IP来源的会话
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-host "192.168.5.7" --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/pt_select.log
# 执行杀操作某IP来源的会话
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-host "192.168.5.7" --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/pt_select_kill.log
4、查杀访问某用户的会话
# 只打印查杀访问某用户的会话
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-user "yoon" --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/pt_select.log
# 执行杀操作-查杀访问某用户的会话
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-user "yoon" --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/pt_select_kill.log
5、杀掉正在进行filesort的sql
# 只打印-杀掉正在进行filesort的sql
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-db='db' --match-command Query --match-state "Sorting result" --run-time 1 --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/pt_select.log
# 执行杀操作-杀掉正在进行filesort的sql
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-db='db' --match-command Query --match-state "Sorting result" --run-time 1 --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/pt_select_kill.log
# 只打印
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-db='db' --match-command Query --match-state "Creating sort index" --run-time 1 --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/pt_select.log
# 执行杀操作
pt-kill --host=192.168.5.7 --port=3306 --user=root --password=hankyoon --match-db='db' --match-command Query --match-state "Creating sort index" --run-time 1 --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/pt_select_kill.log
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。