10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 下载本手册
PDF(美国高级主任)- 41.6 mb
PDF (A4)- 41.7 mb
手册页(TGZ)- 262.1 kb
手册页(Zip)- 372.2 kb
信息(Gzip)- 4.0 mb
信息(邮政编码)- 4.0 mb
本手册节选

13.7.7.15 SHOW ENGINE语句

显示引擎engine_name{状态|互斥量}

显示引擎显示存储引擎的运行信息。它需要过程特权。该语句有以下几种变体:

显示引擎innodb状态

显示引擎innodb状态显示来自标准的大量信息InnoDB状态的监视器InnoDB存储引擎。有关标准监视器等的信息InnoDB提供有关信息的监视器InnoDB处理,请参阅第15.17节,“InnoDB监控”

显示引擎innodb互斥锁显示InnoDB互斥锁而且rw-lock统计数据。

请注意

InnoDB互斥锁和rwlock也可以使用性能模式表。看到章节15.16.2“使用性能模式监视InnoDB互斥锁等待”

互斥锁统计信息收集使用以下选项动态配置:

  • 要启用互斥锁统计信息的收集,执行以下命令:

    SET GLOBAL innodb_monitor_enable='latch';
  • 要重置互斥锁统计信息,运行:

    SET GLOBAL innodb_monitor_reset='latch';
  • 关闭互斥锁统计信息的收集,执行:

    SET GLOBAL innodb_monitor_disable='latch';

的互斥锁统计信息的收集显示引擎innodb互斥锁也可以通过设置启用innodb_monitor_enable = '所有',或通过设置禁用innodb_monitor_disable = '所有'

显示引擎innodb互斥锁输出有这些列:

  • 类型

    总是InnoDB

  • 的名字

    对于互斥对象,使用的名字字段只报告互斥锁的名称。对于rwlock,使用的名字Field报告实现rwlock的源文件,以及创建rwlock的文件中的行号。行号是特定于你的MySQL版本的。

  • 状态

    互斥锁状态。该字段报告旋转、等待和调用的数量。底层操作系统互斥锁的统计信息,这些互斥锁是在InnoDB,没有报告。

    • 旋转旋转数。

    • 等待互斥锁等待的数量。

    • 调用指示互斥锁被请求的次数。

显示引擎innodb互斥锁没有列出每个缓冲池块的互斥锁和rw-lock,因为在具有大缓冲池的系统上,输出的数量将是压倒性的。显示引擎innodb互斥锁但是,打印聚合吗BUF_BLOCK_MUTEX旋转、等待和调用缓冲池块互斥锁和rw-lock的值。显示引擎innodb互斥锁也没有列出任何未被等待的互斥锁或rw-lock (os_waits = 0).因此,显示引擎innodb互斥锁只显示缓冲池外导致至少一个操作系统级别的互斥锁和rw-lock的信息等待

使用显示引擎performance_schema状态检查Performance Schema代码的内部操作:

mysql>显示引擎PERFORMANCE_SCHEMA状态*************************** 3所示。行  *************************** 类型:performance_schema名字:events_waits_history。size状态:76 ***************************行  *************************** 类型:performance_schema名字:events_waits_history。计数状态:10000  *************************** 5。行  *************************** 类型:performance_schema名字:events_waits_history。内存状态:760000…*************************** 57。行  *************************** 类型:performance_schema名字:performance_schema。内存状态:26459600…

这个语句旨在帮助DBA理解不同的性能模式选项对内存需求的影响。

的名字值由两部分组成,分别命名一个内部缓冲区和一个缓冲区属性。对缓冲区名称的解释如下:

  • 未公开为表的内部缓冲区在括号内命名。例子:(pfs_cond_class) .size(pfs_mutex_class) .memory

  • 类中作为表公开的内部缓冲区performance_schema数据库以表命名,不带括号。例子:events_waits_history.sizemutex_instances.count

  • 应用于整个性能模式的值从performance_schema.例子:performance_schema.memory

Buffer属性有以下含义:

  • 大小实现使用的内部记录的大小,例如表中行的大小。大小数值不可修改。

  • 内部记录的数量,例如表中的行数。值可以使用性能模式配置选项更改。

  • 对于一张桌子,tbl_name.memory大小而且.对于整个性能模式,performance_schema.memory所有已使用内存的和(所有其他内存的和?内存值)。

在某些情况下,性能模式配置参数和参数之间有直接关系显示引擎价值。例如,events_waits_history_long.count对应于performance_schema_events_waits_history_long_size.在其他情况下,这种关系更为复杂。例如,events_waits_history.count对应于performance_schema_events_waits_history_size(每个线程的行数)乘以performance_schema_max_thread_instances(线程数)。

显示引擎NDB状态。如果服务器有NDB启用存储引擎,显示引擎NDB状态显示集群状态信息,如连接的数据节点数量,集群连接字符串,集群二进制日志周期,以及MySQL服务器在连接到集群时创建的各种集群API对象的计数。下面是该语句的输出示例:

显示引擎NDB状态+------------+-----------------------+--------------------------------------------------+ | 类型名称| |状态  | +------------+-----------------------+--------------------------------------------------+ | 连接ndbcluster | | cluster_node_id = 7, connected_host = 198.51.100.103 connected_port = 1186, number_of_data_nodes = 4, number_of_ready_data_nodes = 3, connect_count = 0 | | ndbcluster | NdbTransaction | = 6,自由= 0,运算符= 212 | | ndbcluster | NdbOperation | = 8,自由= 8,sizeof=660 | | ndbcluster | NdbIndexScanOperation | created=1, free=1, sizeof=744 | | ndbcluster | NdbIndexOperation | created=0, free=0, sizeof=664 | | ndbcluster | NdbRecAttr | created=1285, free=16, sizeof=136 | | ndbcluster | NdbLabel | created=0, free=0, sizeof=196 | | ndbcluster | ndbsuboutine | created=0, free=0, sizeof=68 | | ndbcluster | NdbCall | created=0,自由= 0,运算符= 16 | | ndbcluster | NdbBlob | = 1,创建自由= 1,运算符= 264 | | ndbcluster | NdbReceiver | = 4,自由= 0,运算符= 68 | | ndbcluster | binlog | latest_epoch = 155467, latest_trans_epoch = 148126, latest_received_binlog_epoch = 0, latest_handled_binlog_epoch = 0, latest_applied_binlog_epoch = 0  | +------------+-----------------------+--------------------------------------------------+

状态每一行中的列分别提供关于MySQL服务器到集群的连接和关于集群二进制日志状态的信息。的状态信息以逗号分隔的名称/值对集合的形式。

连接一行的状态列包含下表中描述的名称/值对。

的名字 价值
cluster_node_id MySQL服务器在集群中的节点ID
connected_host MySQL服务器所连接的集群管理服务器的主机名或IP地址
connected_port MySQL服务器连接管理服务器所使用的端口(connected_host
number_of_data_nodes 为集群配置的数据节点数量(即(ndbd)集群中的部分config.ini文件)
number_of_ready_data_nodes 集群中实际运行的数据节点数
connect_count 乘以这个的数mysqld是否已连接或重新连接到集群数据节点

binlog一行的状态列包含NDB集群复制的相关信息。它包含的名称/值对在下表中描述。

的名字 价值
latest_epoch 在这个MySQL服务器上运行的最近的epoch(即,在服务器上运行的最近事务的序列号)
latest_trans_epoch 由集群的数据节点处理的最近epoch
latest_received_binlog_epoch 二进制日志线程接收到的最近epoch
latest_handled_binlog_epoch 二进制日志线程处理的最近epoch(用于写入二进制日志)
latest_applied_binlog_epoch 最近的纪元实际上是写入二进制日志的

看到第23.7节“NDB集群复制”,以获取更多资料。

的输出中的其余行显示引擎NDB状态下面列出的哪些方法最有可能被证明对监视集群有用的名字

  • NdbTransaction的数量和大小NdbTransaction已创建的对象。一个NdbTransaction每次表模式操作(例如创建表ALTER TABLE)在NDB表格

  • NdbOperation的数量和大小NdbOperation已创建的对象。

  • NdbIndexScanOperation的数量和大小NdbIndexScanOperation已创建的对象。

  • NdbIndexOperation的数量和大小NdbIndexOperation已创建的对象。

  • NdbRecAttr的数量和大小NdbRecAttr已创建的对象。通常,SQL节点每次执行数据操作语句时都会创建其中一个。

  • NdbBlob的数量和大小NdbBlob已创建的对象。一个NdbBlob为每个涉及中的列NDB表格

  • NdbReceiver:任何物体的数量和大小NdbReceiver对象创建的。这个数字在创建列的值与MySQL服务器已连接到的集群中的数据节点数相同。

请注意

显示引擎NDB状态如果不涉及操作,则返回空结果NDB表已经被MySQL客户端在当前会话中执行,访问运行该语句的SQL节点。