上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
9.5 查看冗余索引
使用schema_redundant_indexes视图可以查看重复或冗余索引,数据来源:sys.x$schema_flattened_keys,该数据来源视图被称作schema_redundant_indexes视图的辅助视图。schema_redundant_indexes视图是MySQL 5.7.9中新增的。
下面是使用schema_redundant_indexes视图查询的结果集。
mysql> select * from schema_redundant_indexes limit 1\G *************************** 1. row *************************** table_schema: test # 包含重复或冗余索引的表对应的schema名称 table_name: test # 包含重复或冗余索引的表名 redundant_index_name: i_id # 重复或冗余索引的名称 redundant_index_columns: id # 重复或冗余索引中的列名 redundant_index_non_unique: 1 # 重复或冗余索引中非唯一列的数量 dominant_index_name: i_id_id2 # 与重复或冗余索引相比占据优势(最佳)的索引名称 dominant_index_columns: id, id2 # 占据优势(最佳)的索引中的列名 dominant_index_non_unique: 1 # 占据优势(最佳)的索引中非唯一列的数量 subpart_exists: 0 # 重复或冗余索引是否是前缀索引 sql_drop_index: ALTER TABLE `test`.`test` DROP INDEX `i_id` # 针对重复或冗余索引生成的drop index语句 1 row in set(0.01 sec)