mysql 多久为长事务_追踪MySQL中长时间运行的事务

本文介绍了如何使用MySlowTranCapture工具来追踪MySQL中超过特定时长(默认4秒)的事务,包括其安装和运行方法。通过监听3306端口,该工具能记录事务的起始时间、执行的SQL,帮助开发者定位导致锁等待的问题。示例展示了事务开始、执行SQL和回滚的过程。
摘要由CSDN通过智能技术生成

接上一篇,未提交的事务导致锁等待,锁住一段时间后又提交了(也可能是回滚),锁释放业务继续运行。那么我们如何知道产生锁的事务是在跑什么SQL?

今天讲的这个工具,就可以通过监听3306端口的数据,把每个事务的起始时间,SQL命令都打印出来,而且可以设置事务时长,比如事务时长超过10秒的。

参考链接:https://highdb.com/%E8%BF%BD%E8%B8%AAmysql%E4%B8%AD%E9%95%BF%E6%97%B6%E9%97%B4%E8%BF%90%E8%A1%8C%E7%9A%84%E4%BA%8B%E5%8A%A1/

github链接:https://github.com/yoshinorim/MySlowTranCapture,下载后解压

#安装

How to use:

* Install libpcap, libpcap-devel, boost, and boost-devel if not installed

* make

* make install

* Run myslowtrancapture

#运行

[root@xxxx MySlowTranCapture-master]# myslowtrancapture -f "tcp port 3306"

Monitoring any interface..

Filtering rule: tcp port

Logging transactions that take more than milliseconds..

........开始等待符合条件的输出

#默认检测事务时长是4秒,我们构造一个显式事务,持续时间5秒,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值