的INNODB_TABLESTATS
表提供关于的低级状态信息的视图InnoDB
表。MySQL优化器使用这些数据来计算在查询InnoDB
桌子。此信息源自内存数据结构而不是存储在磁盘上的数据。没有相应的内部InnoDB
系统表。
InnoDB
如果自上次服务器重启以来已打开的表并没有从表缓存中老化,则在此视图中表示它们。这个视图中总是表示可用持久统计数据的表。
表统计信息仅更新删除
或更新
修改索引列的操作。仅修改非索引列的操作不会更新统计信息。
分析表
清除表统计信息并设置STATS_INITIALIZED
列未初始化
.统计信息将在下次访问表时再次收集。
相关用法和示例请参见InnoDB INFORMATION_SCHEMA Schema对象表.
的INNODB_TABLESTATS
Table有以下列:
TABLE_ID
表示可用统计信息的表的标识符;等于
INNODB_TABLES。TABLE_ID
.的名字
表名;等于
INNODB_TABLES。的名字
.STATS_INITIALIZED
这个值是
初始化
如果统计数据已经收集完毕,未初始化
如果不是。NUM_ROWS
表中当前估计的行数。每次DML操作后更新。如果将未提交的事务插入或从表中删除,则该值可能不精确。
CLUST_INDEX_SIZE
存储聚集索引的磁盘上的页数
InnoDB
表数据按主键顺序排列。如果还没有收集到表的统计信息,则此值可能为空。OTHER_INDEX_SIZE
磁盘上存储表的所有二级索引的页数。如果还没有收集到表的统计信息,则此值可能为空。
MODIFIED_COUNTER
由DML操作修改的行数,例如
插入
,更新
,删除
,以及外键的级联操作。每次重新计算时间表统计信息时,将重置此列AUTOINC
为任何基于自动增量的操作发出的下一个数字。速率
AUTOINC
值的变化取决于请求自动递增数字的次数以及每个请求授予的数字的数量。REF_COUNT
当该计数器达到零时,可以从表缓存中逐出表元数据。
例子
mysql> SELECT * FROM INFORMATION_SCHEMA。INNODB_TABLESTATSwhere TABLE_ID = 71\G *************************** 1. row *************************** TABLE_ID: 71 NAME: test/t1 STATS_INITIALIZED: Initialized NUM_ROWS: 1 CLUST_INDEX_SIZE: 1 OTHER_INDEX_SIZE: 0 MODIFIED_COUNTER: 1 AUTOINC: 0 REF_COUNT: 1