Contents

  1. Example
  2. See Also

The mysql.innodb_table_stats table stores data related to InnoDB Persistent Statistics, and contains one row per table.

This table, along with the related mysql.innodb_index_stats table, can be manually updated in order to force or test differing query optimization plans. After updating, FLUSH TABLE innodb_table_stats is required to load the changes.

mysql.innodb_table_stats is not replicated, although any ANALYZE TABLE statements on the table will be by default..

It contains the following fields:

FieldTypeNullKeyDefaultDescription
database_namevarchar(64)NOPRINULLDatabase name.
table_namevarchar(64)NOPRINULLTable, partition or subpartition name.
last_updatetimestampNOcurrent_timestamp()Time that this row was last updated.
n_rowsbigint(20) unsignedNONULLNumber of rows in the table.
clustered_index_sizebigint(20) unsignedNONULLSize, in pages, of the primary index.
sum_of_other_index_sizesbigint(20) unsignedNONULLSize, in pages, of non-primary indexes.

Example

SELECT * FROM mysql.innodb_table_stats\G
*************************** 1. row ***************************
           database_name: mysql
              table_name: gtid_slave_pos
             last_update: 2017-08-19 20:38:34
                  n_rows: 0
    clustered_index_size: 1
sum_of_other_index_sizes: 0
*************************** 2. row ***************************
           database_name: test
              table_name: ft
             last_update: 2017-09-15 12:58:39
                  n_rows: 0
    clustered_index_size: 1
sum_of_other_index_sizes: 2
...

See Also

Comments

Comments loading...