INNODB_CMP_PER_INDEX和INNODB_CMP_PER_INDEX_RESET表
在INNODB_CMP_PER_INDEX
与INNODB_CMP_PER_INDEX_RESET
表提供了相关的操作状态信息压缩InnoDB
表和索引,与数据库,表和索引的每个组合单独的统计数据,以帮助您评估特定表的性能和压缩的实用性。
对于压缩InnoDB
表,表数据和所有辅助索引均被压缩。在这种情况下,表数据仅被视为另一索引,该索引恰好包含所有列:聚集索引。
在INNODB_CMP_PER_INDEX
与INNODB_CMP_PER_INDEX_RESET
表有这些列:
DATABASE_NAME
包含适用表的架构(数据库)。
TABLE_NAME
监视压缩统计信息的表。
INDEX_NAME
监视压缩统计信息的索引。
COMPRESS_OPS
尝试的压缩操作数。网页每当创建一个空的页面或压缩未压缩修改日志的空间用完。
COMPRESS_OPS_OK
成功进行压缩操作的次数。减去该
COMPRESS_OPS
值可得出压缩失败的次数。用该COMPRESS_OPS
值除以得到压缩失败的百分比。COMPRESS_TIME
该索引中用于压缩数据的总时间(以秒为单位)。
UNCOMPRESS_OPS
执行的解压缩操作数。压缩的
InnoDB
网页未压缩的压缩时出现故障,或者在第一时间压缩页面的访问缓冲池和未压缩的页面不存在。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
表压缩对特定表,索引或两者的有效性。 - 您必须具有
PROCESS
查询这些表的权限。 - 使用
INFORMATION_SCHEMA
COLUMNS
表或SHOW COLUMNS
语句参见有关这些表的列的其他信息,包括数据类型和默认值。 - 由于为每个索引收集单独的度量会带来大量的性能开销,
INNODB_CMP_PER_INDEX
因此INNODB_CMP_PER_INDEX_RESET
默认情况下不会收集统计信息。innodb_cmp_per_index_enabled
在要监视的压缩表上执行操作之前,必须启用系统变量。 - 有关使用情况的信息,请参见“在运行时监视InnoDB表压缩”和“使用压缩信息模式表”。有关
InnoDB
表压缩的一般信息,请参见“ InnoDB表和页面压缩”。