mysql查看当前数据库锁请求

information_shcema下的三张表(通过这三张表可以更新监控当前事物并且分析存在的锁问题)
 —— innodb_trx (打印innodb内核中的当前活跃事务)
 —— innodb_locks ( 打印当前状态产生的innodb锁 仅在有锁等待时打印

—— innodb_lock_waits(打印当前状态产生的innodb锁等待 仅在有锁等待时打印



 1) innodb_trx表结构说明 (摘取最能说明问题的8个字段)

字段名 说明
trx_id innodb存储引擎内部唯一的事物ID
trx_state当前事物状态(running和lock wait两种状态)
trx_started  事物的开始时间
trx_requested_lock_id 等待事物的锁ID,如trx_state的状态为Lock wait,那么该值带表当前事物等待之前事物占用资源的ID,若trx_state不是Lock wait 则该值为NULL
trx_wait_started 事物等待的开始时间
trx_weight 事物的权重,在innodb存储引擎中,当发生死锁需要回滚的时,innodb存储引擎会选择该值最小的进行回滚
trx_mysql_thread_id mysql中的线程id, 即show  processlist显示的结果
trx_query  事物运行的SQL语句


 2)innodb_locks表结构说明

字段名 说明
lock_id 锁的ID
lock_trx_id事物的ID
lock_mode锁的模式(S锁与X锁两种模式)
lock_type锁的类型 表锁还是行锁(RECORD)
lock_table要加锁的表
lock_index锁住的索引
lock_space锁住对象的space id
lock_page 事物锁定页的数量,若是表锁则该值为NULL
lock_rec事物锁定行的数量,若是表锁则该值为NULL
lock_data事物锁定记录主键值,若是表锁则该值为NULL(此选项不可信)


 3)innodb_lock_waits表结构说明

字段名 说明
requesting_trx_id申请锁资源的事物ID
requested_lock_id申请的锁的ID
blocking_trx_id阻塞其他事物的事物ID
blocking_lock_id阻塞其他锁的锁ID
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值