mysql锁分析相关的几个系统视图
1、infomation_schema.innodb_lock_waits
+-------------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+-------------+------+-----+---------+-------+
| requesting_trx_id | varchar(18) | NO | | | | #请求锁的事务id
| requested_lock_id | varchar(81) | NO | | | | #请求锁的id
| blocking_trx_id | varchar(18) | NO | | | | #拥有锁的事务id
| blocking_lock_id | varchar(81) | NO | | | | #拥有锁的id
+-------------------+-------------+------+-----+---------+-------+
2、information_schema.innodb_trx
+----------------------------+---------------------+------+-----+---------------------+-------+
| Field | Type | Null | Key | Default |Extra |
+----------------------------+---------------------+------+-----+---------------------+-------+
| trx_id | varchar(18) | NO | | | | # 事务id
| trx_state | varchar(13) | NO | | | | # 事务的执行状态
| trx_started | datetime | NO | | 0000-00-00 00:00:00 | | # 事务开始的时间
| trx_requested_lock_id | varchar(81) | YES | | NULL | | # 事务正等待的锁id
| trx_wait_started | datetime | YES | | NULL | | # 事务等待锁开始的时间
| trx_weight | bigint(21) unsigned | NO | | 0 | | # 事务权重,主要反映事物修改和锁定的行数
| trx_mysql_thread_id | bigint(21) unsigned | NO | | 0 | | # 事务相应线程的id
| trx_query | varchar(1024) | YES | | NULL | | # 事务SQL语句
| trx_operation_state | varchar(64) | YES | | NULL | | # 事务的目前操作
| trx_tables_in_use | bigint(21) unsigned | NO | | 0 | | # 事务处理当前SQL所用的表数
| trx_tables_locked | bigint(21) unsigned | NO | | 0 | | # 事务当前SQL拥有行锁的表数
| trx_lock_structs | bigint(21) unsigned | NO | | 0 | | # 事物保留的锁数
| trx_lock_memory_bytes | bigint(21) unsigned | NO | | 0 | | # 事务锁结构所占内存大小
| trx_rows_locked | bigint(21) unsigned | NO | | 0 | | # 事务锁住的近似行数
| trx_rows_modified | bigint(21) unsigned | NO | | 0 | | # 事务修改和插入的行数
| trx_concurrency_tickets | bigint(21) unsigned | NO | | 0 | | # 指示当前事务被交换出之前需处理工作量的数值
| trx_isolation_level | varchar(16) | NO | | | | # 当前事务的隔离等级
| trx_unique_checks | int(1) | NO | | 0 | | # 唯一检查对当前事务是否开启
| trx_foreign_key_checks | int(1) | NO | | 0 | | # 外键检查对当前事务是否开启
| trx_last_foreign_key_error | varchar(256) | YES | | NULL | | # 最近外键报错的详细信息
| trx_adaptive_hash_latched | int(1) | NO | | 0 | | # 当前事务是否锁定自适应哈希索引
| trx_adaptive_hash_timeout | bigint(21) unsigned | NO | | 0 | | # 指示当前事务是否放弃或保留搜索自适应索引的数值,为0时,则立即放弃
| trx_is_read_only | int(1) | NO | | 0 | | # 当前事务是否只读,1为只读
| trx_autocommit_non_locking | int(1) | NO | | 0 | | # 指示当前事务是否为非锁定自动提交
+----------------------------+---------------------+------+-----+---------------------+-------+
3、information_schema.innodb_locks
+-------------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+---------------------+------+-----+---------+-------+
| lock_id | varchar(81) | NO | | | | # 锁id
| lock_trx_id | varchar(18) | NO | | | | # 拥有锁的事务id
| lock_mode | varchar(32) | NO | | | | # 锁模式
| lock_type | varchar(32) | NO | | | | # 锁类型
| lock_table | varchar(1024) | NO | | | | # 被锁的表
| lock_index | varchar(1024) | YES | | NULL | | # 被锁的索引
| lock_space | bigint(21) unsigned | YES | | NULL | | # 被锁的表空间号
| lock_page | bigint(21) unsigned | YES | | NULL | | # 被锁的页号
| lock_rec | bigint(21) unsigned | YES | | NULL | | # 被锁的记录号
| lock_data | varchar(8192) | YES | | NULL | | # 被锁的数据
+-------------+---------------------+------+-----+---------+-------+
4、information_schema.processlist
+---------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+---------------------+------+-----+---------+-------+
| ID | bigint(21) unsigned | NO | | 0 | | # 连接线程的id
| USER | varchar(32) | NO | | | | # 登录mysql的user
| HOST | varchar(64) | NO | | | | # 登录mysql的主机名或地址:端口
| DB | varchar(64) | YES | | NULL | | # 登录mysql的数据库名
| COMMAND | varchar(16) | NO | | | | # 连接线程当前运行命令的类型
| TIME | int(7) | NO | | 0 | | # 连接线程处于当前状态的秒数
| STATE | varchar(64) | YES | | NULL | | # 连接线程当前所处的状态
| INFO | longtext | YES | | NULL | | # 连接线程当前正执行的语句
+---------+---------------------+------+-----+---------+-------+
mysql锁分析相关的几个系统视图的更多相关文章
- mysql锁表机制及相关优化
(该文章为方便自己查阅,也希望对大家有所帮助,转载于互联网) 1. 锁机制 当前MySQL支持 ISAM, MyISAM, MEMORY (HEAP) 类型表的表级锁,BDB 表支持页级锁,InnoD ...
- MySQL · 特性分析 · innodb 锁分裂继承与迁移
http://mysql.taobao.org/monthly/2016/06/01/ innodb行锁简介 行锁类型 LOCK_S:共享锁 LOCK_X: 排他锁 GAP类型 LOCK_GAP:只锁 ...
- MySQL锁等待分析【2】
MySQL锁等待分析[1]中对锁等待的分析是一步一步来的.虽然最后是分析出来了,可是用时是比较长的:理清各个表之间的关系后,得到如下SQL语句,方便以后使用 select block_trx.trx_ ...
- 转载:把你的精力专注在java,jvm原理,spring原理,mysql锁,事务,多线程,大并发,分布式架构,微服务,以及相关的项目管理等等,这样你的核心竞争力才会越来越高
https://developer.51cto.com/art/202001/608984.htm 把你的精力专注在java,jvm原理,spring原理,mysql锁,事务,多线程,大并发,分布式架 ...
- mysql锁机制总结
1.隔离级别 (1)读不提交(Read Uncommited,RU) 这种隔离级别下,事务间完全不隔离,会产生脏读,可以读取未提交的记录,实际情况下不会使用. (2)读提交(Read commited ...
- mysql锁
锁是计算机协调多个进程或线程并发访问某一资源的机制.在数据库中,除传统的计算资源(如CPU.RAM.I/O等)的争用以外,数据也是一种供许多用户共享的资源.如何保证数据并发访问的一致性.有效性是所有数 ...
- Mysql锁原理浅谈
锁类型/引擎 行锁 表锁 页锁 MyISAM 有 InnoDB 有 有 BDB(被InnoDB取代) 有 有 锁的分类 表锁:开销小,加锁快,不会死锁,粒度大,冲突率高,并发低. 行锁:开销大,加锁慢 ...
- MySQL性能分析(转)
第一步:检查系统的状态 通过操作系统的一些工具检查系统的状态,比如CPU.内存.交换.磁盘的利用率.IO.网络,根据经验或与系统正常时的状态相比对,有时系统表面上看起来看空闲,这也可能不是一个正常的状 ...
- MySQL锁(行锁、表锁、页锁、乐观锁、悲观锁等)
锁,在现实生活中是为我们想要隐藏于外界所使用的一种工具.在计算机中,是协调多个进程或县城并发访问某一资源的一种机制.在数据库当中,除了传统的计算资源(CPU.RAM.I/O等等)的争用之外,数据也是一 ...
随机推荐
- 最新QT4.8+kernel_3.2.5+uboot_2010.06+tslib移植成功-问题小结
2012-02-19 21:34:13 都是从源码下载然后自己修改,使用与TQ2440,之前uboot其实已经完成了.但是yaffs2没带起来.现在回头看来是很简单的了.bootargs参数中我设置成 ...
- 下拉框click事件与搜索框blur事件的爱恨纠葛
还原车祸现场 功能类似于百度搜索,搜索框输入内容,下拉框显示候选项,点击候选项就选择候选项,然后下拉框隐藏,点击外面就直接隐藏下拉框,于是我写了以下代码 //参会单位联想 $('input[name= ...
- 如何在xlwt中编写多个列的单元格?
目的,写下面的表格: ---------------- | Long Cell | ---------------- | 1 | 2 | ---------------- 如果下面这样写: sheet ...
- python coroutine
1. Python Async/Await入门指南 2. 用 Python 3 的 async / await 做异步编程 3.
- id、class等各种选择器总结
1. id 选择器 # class 选择器 . 标签 选择器 标签名 群组 ...
- android开发_Eclipse新建项目+新建模拟器
一.新建项目 1 Eclipse->右键->new->Android Application Project,得到下图: 2 输入创建项目信息 3 点击next 4 点击 next ...
- 【ASP.NET】 HttpContext.Current.User.Identity.Name 返回值为空
问题起因 在做项目的时候,我使用HttpContext.Current.User.Identity.Name来获取Web应用程序正在使用时的用户名. 在开发过程中,我使用了我的本地iis,启用了集成的 ...
- Redis 错误:Failed with result 'start-limit-hit'
Redis 错误:Failed with result 'start-limit-hit' 背景 Redis 版本为 5.0.4: 文件 /etc/systemd/system/redis.servi ...
- CentOS7攻克日记(四) —— 安装Mysql和Redis
这一篇主要安装mysql,redis等数据库 在这篇开始之前,有一个坑,上一篇更改python软连接的时候,尽量都用名字是python3来软连接/usr/../bin/python3.6,把名字是 ...
- Go-For Range 性能研究
文章转载地址:https://www.flysnow.org/2018/10/20/golang-for-range-slice-map.html 如果我们要遍历某个数组,Map 集合.Slice 切 ...