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等等)的争用之外,数据也是一 ...
随机推荐
- Fetch和ajax的比较和区别
传统 Ajax 已死,Fetch 永生 Ajax 不会死,传统 Ajax 指的是 XMLHttpRequest(XHR),未来现在已被 Fetch 替代. 最近把阿里一个千万级 PV 的数据产品全 ...
- 解决SVN提交和更新代码冲突?
解决冲突有三种选择: 1.放弃自己的更新,使用svn revert(回滚),然后提交.在这种方式下不需要使用svn resolved(解决) 2.放弃自己的更新,使用别人的更新.使用最新获取的版本覆盖 ...
- mySQL简单操作(一)
推荐学习网站(https://sqlzoo.net/wiki/SQL_Tutorial) 1.创建mSQL数据表(表名,表字段名,定义表字段) create table tbl_name [if no ...
- 第十二节 JS事件高级应用
事件绑定: IE方式:(仅适用于IE9及以下,其他的比如FF.Chrome.IE11都不适用) attachEvent(事件名称, 函数):绑定事件处理函数 detachEvent(事件名称, 函数) ...
- Vagrant Box下载缓慢解决方法
box 搜索页面:https://atlas.hashicorp.com/boxes/search example:homestead 1,选中box和版本,先根据提示安装 2,获取box下载地址,采 ...
- kNN算法基本原理与Python代码实践
kNN是一种常见的监督学习方法.工作机制简单:给定测试样本,基于某种距离度量找出训练集中与其最靠近的k各训练样本,然后基于这k个“邻居”的信息来进行预测,通常,在分类任务中可使用“投票法”,即选择这k ...
- java @Service 引入什么包
maven中加入 <dependency> <groupId>org.springframework</groupId> <artifactId>spr ...
- HDFS配置参数及优化之实战经验(Linux hdfs)
HDFS优化之实战经验 Linux系统优化 一.禁止文件系统记录时间 Linux文件系统会记录文件创建.修改和访问操作的时间信息,这在读写操作频繁的应用中将带来不小的性能损失.在挂载文件系统时设置no ...
- UVA11107 Life Forms
思路 后缀数组 先都拼在一起 二分+height分段 按照小于x的为分界,判断是否有一个分段中包含超过n/2个串 代码 #include <cstdio> #include <cst ...
- MySQL explain执行计划优化
https://www.linuxidc.com/Linux/2016-04/129965.htm