俗话说:工欲善其事,必先利其器!如果你是做MySQL DBA或运维的,Percona-toolkit我相信这是你日常工作中必备的神器,能够高效的帮助您完成日常的工作;
如果没有用过(难道你是个假的DBA?),不过没关系,从现在开始你用过之后,你绝对爱不释手(天呐,太好用了!!!)
Percona-toolkit工具包同percona-xtrabackup一样都是用Perl写的工具包,percona-toolkit工具包是一组高级的管理mysql的工具包集,可以用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,在生产环境中能极大的提高效率.
percona-toolkit是一组高级命令行工具,可以查看当前服务的摘要信息,磁盘检测,分析慢查询日志,查找重复索引,实现表同步等等。
我们在运维过程中,可能在因为空闲连接较多导致超过最大连接数、某个有问题的sql导致mysql负载很高时,都需要将一些连接kill掉,再使用自带的kill命令不太顺手,直接用自带kill命令就是一个初级的杀手,作为中高级杀手要熟练的使用武器修炼暗杀本领。
首先我们要先去这个地方拿我们的武器。
https://www.percona.com/downloads/percona-toolkit/LATEST/
拿来之后我们就要开始修炼,要不然三岁小朋友拿着屠龙刀不仅干不了事,还有可能误伤了自己。
武器肯定也不是能轻轻松松拿到的,总要有点磨难,毕竟唐僧也要经历九九八十一难。
软件安装存在三种安装方式,分别为RPM包、二进制包、源码安装。
需安装依赖包
yum install perl-DBI perl-DBD-MySQL
1、RPM包安装方式
rpm –ivh percona-toolkit-3.1.0-el7.x86_64.rpm
2、二进制包安装
tar –xvf percona-toolkit-3.0.11_x86_64.tar.gz
cd percona-toolkit-3.0.11
perl Makefile.PL
make
make install
Pt-kill 这个武器就是我们今天作为杀手的关键。
我将该武器秘诀(工具参数)主要分为如下四种:
连接参数:负责连接到数据库
匹配参数:负责筛选出符合要求的的线程
行为参数:筛选出符合要求线程后做的动作
其他重要参数:其他功能参数
那我们学会了秘籍,下面就让我们做一个无情的杀手,只杀生不留情 (▼皿▼#) ▄︻┻═┳一
1、只吃白饭60s不干活的都走开!(杀sleep状态超过60s的会话)
2、名字叫yzw的人都给我走(暴脾气╮(╯▽╰)╭)(杀连接账户为yzw的会话)
3、工作效率太低1h还做不完工作的也给我走开(杀SQL运行时间超过1h的会话)
4、小本本记下来谁被我干掉了(记录杀SQL运行时间超过10s的会话)
注:
指定库必须存在否则会报错!
yzw库中pk_log表,若不存在先创建表–create-log-table
5、每10s检查一次谁在偷懒(每10s杀掉sleep超过60s的会话)
以上,可以根据要求进行实际情况进行实际筛选工作,作为杀手也要杀对正确的会话,平时也要擦亮眼睛,不要乱来啊(毕竟杀错了没有佣金,还有可能被扣工资,杀手工作压力也好大啊~~~)
美创运维中心数据库服务团队拥有Oracle ACE 1人、OCM 10余人、数十名Oracle OCP、MySQL OCP、红帽RHCA、中间件weblogic、tuxedo认证、达梦工程师 ,著有《Oracle DBA实战攻略》,《Oracle数据库性能优化方法和最佳实践》,《Oracle内核技术揭秘》等多本数据运维优化书籍。目前运维各类数据库合计2000余套,精通Oracle、MySQL、SQLServer、DB2、PostgreSQL、达梦等主流商业和开源数据库。并成为首批国内达梦战略合作伙伴之一,拥有海量经验和完善的人员培养体系。并同时提供超融合,私有云整体解决方案。
来源:freebuf.com 2020-08-19 09:37:01 by: database
请登录后发表评论
注册