# 26.4.8 信息_SCHEMA INNODB_CMP_每_索引和
INNODB_CMP_每_指数_重置表
这INNODB_CMP_PER_INDEX
和INNODB_CMP_PER_INDEX_RESET
表格提供有关操作的状态信息压缩的 InnoDB
表和索引,为每个数据库、表和索引的组合提供单独的统计信息,以帮助您评估特定表的压缩性能和有用性。
对于压缩InnoDB
表,表数据和所有二级索引被压缩。在这种情况下,表数据被视为只是另一个索引,恰好包含所有列:聚集索引.
这INNODB_CMP_PER_INDEX
和INNODB_CMP_PER_INDEX_RESET
表有这些列:
数据库名称
包含适用表的架构(数据库)。
TABLE_NAME
要监视压缩统计信息的表。
INDEX_NAME
监视压缩统计信息的索引。
压缩_OPS
尝试的压缩操作数。页面每当创建一个空页面或未压缩的修改日志的空间用完时,就会被压缩。
COMPRESS_OPS_OK
成功的压缩操作数。减去
压缩_OPS
获取数量的值压缩失败.除以压缩_OPS
值以获取压缩失败的百分比。COMPRESS_TIME
用于压缩此索引中的数据的总时间(以秒为单位)。
解压_OPS
UNCOMPRESS_TIME
用于解压缩此索引中的数据的总时间(以秒为单位)。
# 例子
mysql> SELECT * FROM INFORMATION_SCHEMA.INNODB_CMP_PER_INDEX\G
*************************** 1. row ***************************
database_name: employees
table_name: salaries
index_name: PRIMARY
compress_ops: 0
compress_ops_ok: 0
compress_time: 0
uncompress_ops: 23451
uncompress_time: 4
*************************** 2. row ***************************
database_name: employees
table_name: salaries
index_name: emp_no
compress_ops: 0
compress_ops_ok: 0
compress_time: 0
uncompress_ops: 1597
uncompress_time: 0
# 笔记
使用这些表格来衡量
InnoDB
桌子压缩用于特定的表、索引或两者。你必须拥有
过程
查询这些表的权限。因为为每个索引收集单独的测量值会带来大量的性能开销,
INNODB_CMP_PER_INDEX
和INNODB_CMP_PER_INDEX_RESET
默认情况下不收集统计信息。您必须启用innodb_cmp_per_index_enabled
对要监视的压缩表执行操作之前的系统变量。有关使用信息,请参阅第 15.9.1.4 节,“在运行时监控 InnoDB 表压缩”和第 15.15.1.3 节,“使用压缩信息模式表”.有关一般信息
InnoDB
表压缩,见第 15.9 节,“InnoDB 表和页面压缩”.