pt-kill 用法记录

# 参考资料
Percona-Toolkit系列之pt-kill杀会话利器
http://www.fordba.com/percona-toolkit-pt-kill.html

1.pt-kill

生产环境中我们时常遇到这样的情况,数据库性能恶劣,需要马上杀掉全部会话,不然数据库就挂起来。我们可以先找show processlist的输出来杀会话,但是比较麻烦。pt-kill为我们解决了杀会话问题。

2.常用杀会话场景

-- 1、每10秒检查一次,发现有 Query 的进程就给干掉
# 只打印-每10秒检查一次,发现有 Query 的进程就给干掉
pt-kill --host=192.168.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --match-command="Query" --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/1.log
# 执行杀操作
pt-kill --host=192.168.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --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.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --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.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --match-info "select|SELECT" --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/pt_select_kill.log
-- 3、查杀某IP来源的会话
# 只打印-查杀某IP来源的会话
pt-kill --host=192.168.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --match-host "192.168.65.129" --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/pt_select.log
# 执行杀操作-查杀某IP来源的会话
pt-kill --host=192.168.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --match-host "192.168.65.129" --busy-time 30 --victims all --interval 10 --daemonize --kill --log=/tmp/pt_select_kill.log
-- 4、查杀访问某用户的会话
# 只打印-查杀访问某用户的会话
pt-kill --host=192.168.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --match-user "u2" --busy-time 30 --victims all --interval 10 --daemonize --print --log=/tmp/pt_select.log
# 执行杀操作-查杀访问某用户的会话
pt-kill --host=192.168.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --match-user "u2" --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.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --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.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --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.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --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.65.128 --port=3306 --user=root --password=rootpwd --match-db='db222' --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

pt-kill 用法记录的更多相关文章

  1. CURL 用法记录

    CURL 用法记录 在工作中经常需要用到curl 命令,记录一下常用的场景 Send a POST Request with JSON Data curl -d '{"login" ...

  2. python 一些函数和类用法记录

    这一篇主要用来记录在学习过程中遇到的一些觉得有意思的函数或者类的用法,有一些用法感觉很炫酷. 1.collections.defaultdict from collections import def ...

  3. jqueryui / accordion的用法记录

    jqueryui 的 widget 中包含了基本上我们都需要的ui组件, 除了那个unslider. 参考地址是: www.jqueryui.com. 要能够看懂/并使用/ 完全掌握的话, 就要使用其 ...

  4. asp.net 第三方UI控件 Telerik KendoUI 之 TreeVIew 的用法记录

    一.前台显示 备注:一次性取出所有节点 function loadTreeData() { $.ajax({ type: 'POST', url: '@(Html.UrlHref("Scri ...

  5. jquery图片延迟加载 及 serializeArray、serialize用法记录

    1.使用jquery实现 图片延迟加载 由于用户访问页面需要加载很多的图片,延迟加载技术在电子商务网站领域越来越普及,淘宝商城,京东商城,凡客等访问量巨大的电子商务站点为了增加用户用户体验,访问速度以 ...

  6. 【java】java基本用法记录

    java用法总结 计时 long startTime = System.nanoTime(); solution.process(inputFile); long endTime = System.n ...

  7. CountDownLatch/CyclicBarrie用法记录

    在jdk1.5中,java提供了很多工具类帮助我们进行并发编程,其中就有CountDownLatch和CyclicBarrie 1.CountDownLatch的用法 CountDownLatch 位 ...

  8. sed 用法记录

    sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法sed命令行格式为:         sed ...

  9. mongo aggregate 用法记录

    mongo 聚合查询查询还是很方便的,做下记录     依赖的jar是org.springframework.data.mongodb 1.9.6  低版本可能不支持. 数据结构  大概是  这是一份 ...

随机推荐

  1. Jetson TX1 install py-faster-rcnn

    Install py-faster-rcnn following the official version  https://github.com/rbgirshick/py-faster-rcnn ...

  2. window.onpopstate

    概述 window.onpopstate是popstate事件在window对象上的事件句柄. 每当处于激活状态的历史记录条目发生变化时,popstate事件就会在对应window对象上触发. 如果当 ...

  3. 在web-inf外面 使用的是绝对路径进行访问 “/”表示访问文件夹 一层一层方式 我们在windos下访问文件夹也是一层一层的访问

  4. iOS WKWebView全屏浏览网页返回 状态栏问题

    问题: 用这个方法隐藏显示状态栏,总是带有残余 过一会才能消失掉 [[UIApplication sharedApplication]setStatusBarHidden:YES]; 可以切换状态栏的 ...

  5. Nginx map模块

    L77 Syntax: map string $variable { ... } Default: — Context: http map 指令 curl -H 'aaaa:4444444' -H ' ...

  6. raise missingsectionheadererror:file containe no section headers问题解决

    本人亲测,遇到这个问题,就换到管理员方式运行命令 因为太小白,所以这次重新装包的时候切换到D盘了,想着省一点儿C盘内存,结果,每次pip install安装的时候都是这个问题,中间还有什么反序列失败, ...

  7. 关于i++和i++的左值、右值问题

    1.什么是左值和右值? 左值就是出现在表达式左边的值(等号左边),可以被改变,他是存储数据值的那块内存的地址,也称为变量的地址: 右值是指存储在某内存地址中的数据,也称为变量的数据. 左值可以作为右值 ...

  8. 重写Distinct

    添加类并继承`IEqualityComparer`,重写方法 public class DistinctComparer : IEqualityComparer<ActionInfo> { ...

  9. redis日常使用汇总--持续更新

    redis日常使用汇总--持续更新 工作中有较多用到redis的场景,尤其是触及性能优化的方面,传统的缓存策略在处理持久化和多服务间数据共享的问题总是不尽人意,此时引入redis,但redis是单线程 ...

  10. BZOJ3724PA2014Final Krolestwo——欧拉回路+构造

    题目描述 你有一个无向连通图,边的总数为偶数.设图中有k个奇点(度数为奇数的点),你需要把它们配成k/2个点对(显然k被2整除).对于每个点对(u,v),你需要用一条长度为偶数(假设每条边长度为1)的 ...