重复执行show innodb status的方法

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介:

比如需要观察show innodb status、innodb_tablespace_monitor、innodb_lock_monitor、innodb_table_monitor这些命令在某个时间段的信息,如果要手动重复执行很麻烦,而innodb引擎在设计的时候就已经考虑到了,不过不够灵活,方法如下:

在数据库中创建相应引擎为innodb的表,创建相应的表之后,每15秒输出一次相应的信息到mysql error log中,不需要此功能的时候,删除相应的表即可,语句如下:

mysql> create table innodb_monitor(a int) engine=innodb;
Query OK, 0 rows affected (0.00 sec)

mysql> create table innodb_tablespace_monitor (a int) engine=innodb;
Query OK, 0 rows affected (0.01 sec)

mysql> create table innodb_lock_monitor (a int) engine=innodb;
Query OK, 0 rows affected (0.01 sec)

mysql> create table innodb_table_monitor (a int) engine=innodb;
Query OK, 0 rows affected (0.01 sec)

其实在Linux中,利用watch命令更加灵活地实现上面的需求,例如:每30秒输出一次show innodb status的结果,并把结果保存在一个文件中,语句如下:

[root@youxia205 tmp]# watch -n 30 'mysql -uroot -padmin -e "show innodb status\G" >> www.log';

关于watch命令的详细用法,可以查询man手册。

 










本文转自 trt2008 51CTO博客,原文链接:http://blog.51cto.com/chlotte/395326,如需转载请自行联系原作者
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
存储 运维 安全
数据库运维之InnoDB存储引擎表损坏修复方法
InnoDB存储引擎表的损坏可能是多种因素导致的,比如服务器断电、系统崩溃、硬盘损坏、写数据过程中mysqld进程被kill掉。
1283 0
|
SQL NoSQL 安全
Percona 8.0.30中"show engine innodb status"导致coredump排查及分析
Percona 8.0.30中"show engine innodb status"导致coredump排查及分析
228 0
|
监控 算法 安全
MySQL:5.6 大事务show engine innodb status故障一例
MySQL:5.6 大事务show engine innodb status故障一例
296 0
MySQL:5.6 大事务show engine innodb status故障一例
|
监控 算法 安全
MySQL:5.6 大事务show engine innodb status故障一例
MySQL:5.6 大事务show engine innodb status故障一例
MySQL:5.6 大事务show engine innodb status故障一例
|
关系型数据库 MySQL
超赞,InnoDB调试死锁的方法!
近期写了不少InnoDB锁相关的文章,不少小伙伴问,如何在MySQL终端模拟并发事务,如何复现之前文章中的案例。今天,咱们一起动起手来,模拟并发事务的互斥与死锁。
417 0
|
监控 关系型数据库
Innodb: 自动开启打印show engine status到err日志
这个问题是一个朋友问我的@刘加奇 一、问题描述 为什么我的err日志里面有大量的show engine innodb status的记录,我自己并没有开启innodb_status_output参数。
1420 0