MySQL 中information_schema 架构中与lock 相关的表介绍!

对于MySQL来说,在information_schema 架构下添加了表 innodb_trx     innodb_locks    innodb_lock_waits 三张表。通过这三张表我们可以简单的监控当前事务并分析可能存在的锁,
下面我们对这三张表进行解析:
INNODB_TRX
字段名称                                                               说明
trx_id                            innodb 存储引擎内部唯一的事务ID 
trx_state                       当前事务的状态
trx_started                    事务的开始时间
trx_requested_lock_id   等待事务的锁ID。如trx_state 的状态为LOCK WAIT ,那么该值代表当前的事务等待之前事务占用锁资源的ID。 若trx_state 不事LOCK WAIT ,则该指为空。
trx_wait_started            事务等待开始的事件
trx_weight                    事务的权重,反映了一个事务修改和锁住的行数,在Innodb 存储引擎中,当发生死锁需要回滚时,Innodb 存储引擎会选择一个权重最小的值进行回滚。
trx_mysql_thread_id      MySQL中的线程ID,SHOW PROCESSLIST 显示的结果
trx_query                      事务运行的SQL 语句

INNODB_LOCKS的结构
lock_id        锁的ID
lock_trx_id   事务的ID
lock_mode   锁的模式
lock_type     锁的类型,表锁还事行锁
lock_table     要加锁的表
lock_index    锁住的索引
lock_space    锁对象的space id
lock_page      事务锁定页的数量,若是表锁,则该值为null
lock_rec          事务锁定行的数量,若是表锁,则该指为null
lock_data        事务锁定记录的主键值,若是表锁,则该值为null 

INNODB_LOCK_WAITS
字段                                        说明
requesting_trx_id                     申请锁资源的事务ID
requesting_lock_id                   申请的锁的ID
blocking_trx_id                        阻塞的事务ID
blocking_trx_id                        阻塞的锁的ID

可以通过以上的三张表查询到详细的事务锁的信息
也可以通过以下sql 进行详细的方法查询
select 
r.trx_id waiting_trx_id,
r.trx_mysql_thread_id waiting_thread, 
r.trx_query waiting_query,
b.trx_id blocking_trx_id,
b.trx_mysql_thread_id blocking_thread,
b.trx_query blocking_query
from information_schema.innodb_lock_waits w 
inner join information_schema.innodb_trx b
on b.trx_id = w.blocking_trx_id
inner join information_schema.innodb_trx r
on r.trx_id = w.requesting_trx_id \G;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30176559/viewspace-1840280/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/30176559/viewspace-1840280/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值