- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章percona 实用工具之pt-kill使用介绍由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
pt-kill 是一个优秀的kill MySQL连接的一个工具,是percona toolkit的一部分,在因为空闲连接较多导致超过最大连接数、某个有问题的sql导致mysql负载很高时,都需要将一些连接kill掉,这个工具主要就是这个用途.
从show processlist 中获取满足条件的连接或者从包含show processlist的文件中读取满足条件的连接并打印或者杀掉或者执行其他操作,这个工具在工作中实用性很高,当服务器连接出现异常后第一想到的就是pt-kill,自己写一个脚本也可以,但是功能还是没有pt-kill强大;一般我喜欢将连接本地MySQL的必要信息放在一个文件文件中,当需要连接本地mysql时直接指定配置文件即可; 。
常用功能介绍 pt-kill --defaults-file xx --match-command Sleep --kill --victims all --interval 10 每隔10s 杀掉处于sleep状态的连接数; 。
pt-kill defaults-file xx --busy-time 60 --kill --victims all --interval 10 每隔10s 杀掉处初步runnning状态超过60s的连接数; 。
几个重要参数 --daemonize 放在后台以守护进程的形式运行; --interval 多久运行一次,单位可以是s,m,h,d等默认是s --victims 默认是oldest,只杀最古老的查询。这是防止被查杀是不是真的长时间运行的查询,他们只是长期等待。这种种匹配按时间查询,杀死一个时间最高值。 all 杀掉所有满足的线程 杀死所有,但最长的保留不杀 。
action --kill 杀掉连接并且退出 --kill-query 只杀掉连接执行的语句,但是线程不会被终止 --print 打印满足条件的语句 。
QUERY MATCHES --busy-time 批次查询已运行的时间超过这个时间的线程; --idle-time 杀掉sleep 了多少时间的连接线程,必须在--match-command sleep时才有效 。
更多介绍可以参考官方的文档:https://www.percona.com/doc/percona-toolkit/2.1/pt-kill.html#cmdoption-pt-kill--interval 。
参数 。
–busy-time 。
运行时间 。
–idle-time 。
空闲时间 。
–victims 。
所有匹配的连接,对应有最久的连接 。
–interval 。
间隔时间,默认30s,有点长,可以根据实际情况来调节 。
–print 。
打印出来kill掉的连接 。
–match-command 。
匹配当前连接的命令 。
Query Sleep Binlog Dump Connect Delayed insert Execute Fetch Init DB Kill Prepare Processlist Quit Reset stmt Table Dump –match-state 。
匹配当前连接的状态 。
Locked login copy to tmp table Copying to tmp table Copying to tmp table on disk Creating tmp table executing Reading from net Sending data Sorting for order Sorting result Table lock Updating –match-info 。
使用正则表达式匹配符合的sql 。
–match-db –match-user –match-host 。
见名知意 。
常用用法 。
杀掉空闲链接 。
pt-kill –match-command Sleep –idle-time 5 –host –port –interval –print –kill –victims all 。
杀掉运行时间超过5s的链接 。
pt-kill –match-command Query –busy-time 5 –host –port –interval –print –kill –victims all 。
杀掉匹配某个规则的正在运行的sql 。
pt-kill –match-command Query –busy-time 5 –host –port –interval –print –kill –victims all –match-info 。
杀掉正在进行filesort的sql 。
pt-kill –match-command Query –match-state “Sorting result” busy-time 5 –host –port –interval –print –kill –victims all 。
杀掉正在Copying to tmp table的sql 。
pt-kill –match-command Query –match-state “Copying to tmp table” busy-time 5 –host –port –interval –print –kill –victims all 。
最后此篇关于percona 实用工具之pt-kill使用介绍的文章就讲到这里了,如果你想了解更多关于percona 实用工具之pt-kill使用介绍的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
复制类工具 1. pt-heartbeat 功能介绍: 监控mysql复制延迟 用法介绍: pt-heartbeat [OPTION...] [DSN] --update|--monit
我想在 grafana 仪表板中对数据库服务器进行分组,例如属于同一集群 db-pxc 的服务器,最终看起来像这样: DB-PXC -Disk_Performance -db-
我正在尝试为 MySQL 启动一个 Percona 集群。 bootstrap 节点已成功启动。但是,在尝试添加新节点时,我遇到了问题。 通过读取日志文件,节点已成功交换状态 UUID,但最终出现以下
我需要以某种方式对一个巨大的 MyISAM 表进行排序,以便在某些条件下 SELECT 更快。 请注意,这个问题是关于如何以零停机时间执行 ALTER 表,以按某些特定的列顺序对表进行排序。这不是询问
我正在尝试使用 percona xtrabackup 来备份 mysql 数据库。在按照documentation恢复数据库: rsync -avrP /data/backup/ /var/lib/m
我有一个数据库,其中一个表几天后就损坏了。一旦它损坏,它就不会出现在表列表中,如果我尝试再次创建它,我会得到表'svb.rate_list'不存在 为什么该表可能会损坏?知道如何避免这种情况吗? 我正
在尝试执行以下操作后,我从 MySQL (Percona) 收到“无法从存储引擎读取自动增量值”错误: LOAD DATA LOCAL INFILE 我一直在尝试在 stackoverflow 和
我正在根据官方指南在AWS ec2中的CentOS 6.5上设置percona集群(版本5.6): How to setup 3 node cluster in EC2 enviroment 当我在第
我最近发现了percona,看起来很有趣的东西。我对它的作用有一个基本的了解,但想知道它如何在行业标准生产环境中使用,以及何时应该使用 percona 而不是标准 Mysql。这两者各有什么优缺点。有
如何使用 percona 修改表以允许空值。 pt-online-schema-change --modfiy mycolumn default null d=database, t=table 我看
我正在尝试在两个 MySQL 服务器之间设置复制。从奴隶我登录如下: mysql --host=10.32.8.187 --user=repl --password=******** 我的CHANG
我们使用 percona 集群 5.7.20我的 wsrep 配置。 max_connections = 10000 open_files_limit = 32768 wsrep_sync_wait=
我在 CentOS-6 上安装了 percona xtrabackup,它安装得很好。但是,我似乎找不到任何博客或文档来说明如何配置或运行 xtrabackup 来实际备份我的数据库。如果可能的话,我
虽然这是一个愚蠢的问题,但在整个互联网上搜索后找不到答案。那么如何检查服务器上是否安装了 Percona 或原始 MySQL? 最佳答案 service mysql status 在基于centos/
什么是流量控制? Percona XtraDB Cluster具有一种称为流控制的自调节机制。该机制有助于避免集群中最弱/最慢的成员明显落后于集群中其他成员的情况。 当集群成员在
pt-kill 是一个优秀的kill MySQL连接的一个工具,是percona toolkit的一部分,在因为空闲连接较多导致超过最大连接数、某个有问题的sql导致mysql负载很高时,都需要将一
我们有一个Percona Xtradb-v2集群,其中包含3个节点。 当我们关闭节点2和3,仅剩下节点1时,一切都在工作并同步进行。节点保持关闭一周,在此期间数据库大小增加了100GB。 当我们尝试重
我已经设置了具有 3 个节点的 Percona Xtradb 集群。第一个节点使用 bootstrap 启动正常,但是当我尝试启动第二个节点加入集群时,出现以下错误: 2015-08-27 18:08
请原谅我的无知,但我对 MySQL 没有太多经验。我是一名 Web 开发人员,但总的来说,我几乎只是安装了 MySQL 或启动了一个 RDS 实例,连接到它并且一切正常。然而,我目前的任务是创建我们的
假设我有两个查询: SELECT name, description FROM items WHERE id = 5; SELECT description, name FROM items WHER
我是一名优秀的程序员,十分优秀!