首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Innodb加锁信息查看

Innodb加锁信息查看

作者头像
十毛
发布2021-07-27 14:41:27
发布2021-07-27 14:41:27
1.3K00
代码可运行
举报
运行总次数:0
代码可运行

Innodb加锁分析时,需要查看当前加锁情况

使用命令行

代码语言:javascript
代码运行次数:0
运行
复制
show engine innodb status

开启NNODB监控机制(InnoDB Monitors)

mysql提供一套INNODB监控机制,用于周期性(每15钞)输出INNODB运行相关状态(INNODB运行状态、表空间状态、表状态等)到mysqld服务标准错误输出。另外,INNODB标准监控和锁监控,也可以通过命令:show engine innodb status输出到控制台。

自mysql 5.6.16版本之后,可以通过设置系统参数(innodb_status_output_locks)的方式开启或者关闭标准监控。

代码语言:javascript
代码运行次数:0
运行
复制
set GLOBAL innodb_status_output=ON;
set GLOBAL innodb_status_output_locks=ON;

查看表信息

  • 开启performance_schema 修改performance_schema参数需要重启mysql
代码语言:javascript
代码运行次数:0
运行
复制
[mysqld]
performance_schema=ON

分别查看事务的锁信息,以及锁等待信息,mysql8与之前的版本查询的表不一样,是在performance_schema库中,表名也变成了data_locksdata_lock_waits

代码语言:javascript
代码运行次数:0
运行
复制
// mysql 5.x
// innodb_locks记录了所有innodb正在等待的锁,和被等待的锁
select * from information_schema.innodb_locks;
// innodb_lock_waits记录了所有innodb锁的持有和等待关系
select * from information_schema.innodb_lock_waits'

// mysql8: 锁信息
select * from performance_schema.data_locks;
// mysql8: 锁等待信息
select * from performance_schema.data_lock_waits;
// mysql8: MDL锁信息
select * from performance_schema.metadata_locks;
  • 查看当前事务ID
代码语言:javascript
代码运行次数:0
运行
复制
SELECT tx.trx_id FROM information_schema.innodb_trx tx WHERE tx.trx_mysql_thread_id = connection_id()

参考

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用命令行
  • 查看表信息
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档