mysql监控死锁_mysql死锁监控
1.建立监视表(锁相关信息会输出到错误日志,执行频率为20s一次。需要停止监控时直接删除表)
说明:这种情况会导致错误日志增加过快
create table innodb_lock_monitor(x int) engine=innodb;
2.使用第三方工具,如innotop,进入后按D键可查看死锁相关事务
3.手工写脚本,直接过滤show engine innodb status中的死锁信息(线上使用,昨天做了简单测试,大家可以补充和修改)
#!/bin/sh
user=xxx
passwd=xxxx
sql=/data/mysql/bin/mysql
IP="MYSQL-75"
AlertLog=/home/mysql/cron/Alert_DeadLock.log
DeadLocks=/home/mysql/cron/DeadLocks.log
Date_min_1=`date -d '1 minutes ago' '+%y%m%d %k:%M'`
#导出innodb状态输出中包含1分钟前内容的数据
$sql -u$user -p$passwd -e "show engine innodb status \G" | grep -e "$Date_min_1" > /dev/null
#如果存在1分钟前的死锁信息
if [ $? = 0 ]; then
#导出数据到文件
$sql -u$user -p$passwd -e "show engine innodb status \G" > $DeadLocks
#获取死锁信息的开始行号
sln=`grep -n "LATEST DETECTED DEADLOCK" $DeadLocks | cut -d: -f 1`
#获取死锁信息的结束行号
eln=`grep -n "ROLL BACK TRANSACTION" $DeadLocks | cut -d: -f1`
#开始行号大于0 并且 结束行号大于开始行号
if [ $sln -gt 0 -a $eln -gt $sln ]; then
#获取死锁开始信息向后第二行的内容(即死锁发生的时间)
message=`sed -n "$(($sln+2)) p" $DeadLocks`
echo $message" $IP DETECTED DEADLOCK."
wget -O /dev/null "http://202.108.36.121/sms/?sid=r2&ghp=og_db_oraclegroup&msg=$NOW $message $IP Detected DeadLock. Check Alert_DeadLock.log"
echo "######################## `date +%F" "%T` ########################" >> $AlertLog
#记录死锁信息到日志文件
sed -n "$sln,$eln p" $DeadLocks >> $AlertLog
fi;
fi;
mysql监控死锁_mysql死锁监控相关推荐
- mysql数据库监控程序_mysql数据库监控利器lepus天兔工具安装和部署
需要的核心包如下: 以下软件包只需要部署在监控机即可.被监控机无需部署. 1.MySQL 5.0及以上(必须,用来存储监控系统采集的数据) 2.Apache 2.2及以上 (必须,WEB服务器运行服务 ...
- mysql数据库批量插数死锁_MySQL 死锁套路:一次诡异的批量插入死锁问题分析
线上最近出现了批量insert的死锁,百思不得姐.死锁记录如下 2018-10-26T11:04:41.759589Z 8530809 [Note] InnoDB: *** (1) TRANSACTI ...
- mysql取消死锁_mysql 死锁可以自动解除吗
1. session1 执行 delete 会在唯一索引 c2 的 c2 = 15 这一记录上加 X lock(也就是在MySQL 内部观测到的:X Lock but not gap): 2. se ...
- mysql测试死锁_mysql死锁几种情况的测试_MySQL
sessionA: test>begin -> ; Query OK, 0 rows affected (0.00 sec) test>select * from tt where ...
- mysql 1061原因_MySQL死锁问题分析及解决方法实例详解(转)
出处:http://www.jb51.net/article/51508.htm MySQL死锁问题是很多程序员在项目开发中常遇到的问题,现就MySQL死锁及解决方法详解如下: 1.MySQL常用存储 ...
- mysql pmm进程_mysql性能监控软件pmm
具体配置操作步骤: 1.在vmware或者virtualbox上安装centos镜像,可以选择阿里巴巴的镜像,下载速度快 centos7 修改yum源为阿里源,某下网络下速度比较快 首先是到yum源设 ...
- mysql先删后增并发时出现死锁_MySQL死锁案例分析一(先delete,再insert,导致死锁)...
一.死锁案例 MySQL版本:Percona MySQL Server 5.7.19 隔离级别:可重复读(RR) 业务逻辑:并发下按某个索引字段先delete记录,再insert记录 比如:begin ...
- mysql锁场景_MySQL死锁系列-常见加锁场景分析
在上一篇文章<锁的类型以及加锁原理>主要总结了 MySQL 锁的类型和模式以及基本的加锁原理,今天我们就从原理走向实战,分析常见 SQL 语句的加锁场景.了解了这几种场景,相信小伙伴们也能 ...
- 如何判断mysql死锁_MySQL 死锁问题分析
线上某服务时不时报出如下异常(大约一天二十多次):"Deadlock found when trying to get lock;". Oh, My God! 是死锁问题.尽管报错 ...
最新文章
- 卡尔曼滤波— Constant Velocity Model
- sqlplus 如何连接到指定数据库,并创建用户与授权
- 编写 DockerFile
- 蓝桥杯java第八届第七题--日期问题
- ElasticSearch suggester
- centos安装 mysql_centos下安装MySQL数据库
- git SSH 公钥拉取代码(使用及配置)
- 【2013高考作文】重庆作文
- PAT C语言 1031 查验身份证 (15 分) 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:
- 计算机网络各层设备故障及可行的解决方案
- 带掩码的自编码器MAE在各领域中的应用总结
- 前端学习笔记001:HTML5
- 如何使用阿里云搭建自己的云主机(超详细)
- 基于VMware12虚拟机的Hadoop3.1.2伪分布式安装(含各软件百度云下载地址、安装过程中各类问题的解决方案)
- 15分钟带你了解lower_bound和upper_bound
- Firefly-RK3288 Ubuntu18.04 修改终端登录显示信息
- 【习题35】交互程序三 + 汉化版
- hexo 博客小功能添加-评论、萌妹纸、相册、字数统计...
- Ubnt EdgeMax 3322 ddns更新方法
- 算法设计与分析课后总结
热门文章
- SQL Sever查询事务隔离级别命令
- RN REACT com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: INSTA
- 2018中国金融科技竞争力100强榜单
- GD32实战7__中断
- 在Idea中使用Git
- 周志华 《机器学习》之 第十一章(特征选择与稀疏学习)概念总结
- 【c语言】写一个程序获取现在的准确时间(精确到秒)
- 03 -数据分析与SQL- Lesson3 SQL 聚合
- myeclipse安装sonarlint插件失败
- 根据商品类型按商品价格对商品打标签。标签规则:前20%为高档,20%到80%为中档,后20%为低档。