search
场景和视图 视图模板 MySQL 锁监控

MySQL 锁监控

简介

展示 MySQL 的InnoDB事务锁冲突和MetaDataLock元锁冲突情况

前置条件

需安装 DataKit,并开启以下指标采集:

mysqlmonitor

配置

数据库授权

# 创建监控账号
create user datakit identified by Zyadmin123;
GRANT select,replication client ON *.* TO 'datakit'@'%';
flush privileges;

配置采集器

cd /usr/local/cloudcare/forethought/datakit/conf.d/mysqlmonitor/
vim mysqlmonitor.conf
[[mysql]]
  ## 采集的频度,最小粒度5m
  interval = '300s'
  metricName = 'mysql_locks'
  instanceId = 'mysql01'
  instanceDesc = 'DBA团队自建MySQL实例'
  host = '10.200.6.53'
  port = '3306'
  username = 'solarops'
  password = 'Zyadmin123'
  database = 'mysql'
  product = '阿里云RDS For MySQL'

重新启动datakit

systemctl restart datakit

概览

指标

类型明细

type 采集分类
mysql_metadatalock_session 元锁会话明细
mysql_metadatalock_info 元锁个数和导致元锁冲突的未提交的事务会话最大的id(一个)
mysql_metadatalock_trx_id 导致元锁冲突的长时间未提交的事务会话id(多个)
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因

指标明细

type 采集分类 Fields 数据类型 单位 描述
mysql_metadatalock_session 元锁会话明细 id int64 会话id
mysql_metadatalock_session 元锁会话明细 user string 会话的登录用户名
mysql_metadatalock_session 元锁会话明细 host string 会话的来源地址
mysql_metadatalock_session 元锁会话明细 db string 会话访问的数据库名
mysql_metadatalock_session 元锁会话明细 command string 会话执行的语句类型
mysql_metadatalock_session 元锁会话明细 conn_time int64 会话持续时间
mysql_metadatalock_session 元锁会话明细 state string 会话状态
mysql_metadatalock_session 元锁会话明细 info string 会话执行的具体SQL语句
mysql_metadatalock_info 元锁个数和导致元锁冲突的未提交的事务会话最大的id(一个) count int64 会话总数
mysql_metadatalock_info 元锁个数和导致元锁冲突的未提交的事务会话最大的id(一个) id int64 导致元锁冲突的长时间未提交的事务会话id
mysql_metadatalock_trx_id 导致元锁冲突的长时间未提交的事务会话id(多个) id int64 会话id
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 id int64 会话id
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 user string 会话的登录用户名
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 host string 会话的来源地址
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 db string 会话访问的数据库名
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 command string 会话执行的语句类型
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 conn_time int64 会话持续时间
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 state string 会话状态
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 info string 会话执行的具体SQL语句
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_id int64 事务id
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_state string string 事务状态
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_started string 事务开始时间
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_requested_lock_id string 等待事务的锁id
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_wait_started string 事务等待开始的事件
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_weight int64 事务的权重
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_mysql_thread_id int64 事务线程id
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_query string 事务运行的SQL
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_operation_state string 事务的操作轧辊台
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_tables_in_use int64 事务使用的表
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_tables_locked int64 被锁住的表
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_lock_structs int64 事务保留的锁
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_lock_memory_bytes int64 事务锁定的内存大小
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_rows_locked int64 事物锁定的最大行树
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_rows_modified int64 事务修改的行数
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_concurrency_tickets int64
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_isolation_level string 事务隔离级别
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_unique_checks int64 事务的唯一键检查是打开还是关闭
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_foreign_key_checks int64 事务的外键检查是否开启
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_last_foreign_key_error string 事务最近一次外键错误
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_adaptive_hash_latched int64 自适应哈希索引是否被当前事务锁定
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_adaptive_hash_timeout int64 自适应哈希索引是否超时
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_is_read_only int64 1表示事务是只读的
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 trx_autocommit_non_locking int64 值1表示事务是不使用for update或lock in shared mode子句的select语句,并且在启用autocommit设置的情况下执行,因此事务将只包含此语句。(5.6.4及更高版本。)当此列和trx_均为只读时,innodb会优化事务,以减少与更改表数据的事务相关的开销。
mysql_innodb_blocking_trx_id 获取到innodb事务锁冲突的会话明细,以及一共阻塞了多少事务,用于快速解决行锁冲突 countnum int64 该事务阻塞了多少其他事务
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_id string 锁id
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_trx_id int64 事务id
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_mode string 锁的模式
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_type string 锁的类型
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_table string 申请锁的表
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_index string 锁住的索引
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_space int64 锁对象的space id
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_page int64 事务锁定页的数量
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_rec int64 事务锁定行的数量
mysql_innodb_lock_waits 获取到innodb事务锁冲突锁信息,用于分析行所锁原因 lock_data int64 事务锁定记录的主键值

标签明细

类型 tag 说明 属性
所有类型通用 host 采集器的地址 全局
所有类型通用 server 数据库连接地址 全局
所有类型通用 port 数据库监听端口 全局
所有类型通用 instanceId 实例ID 全局
所有类型通用 instanceDesc 实例描述 全局
所有类型通用 dbName 连接的数据库 全局
所有类型通用 product 数据库类型 自建MySQL、阿里云数据库RDS For MySQL 全局
所有类型通用 type 指标类型 全局