MySQL 查询冗余索引
MySQL 索引 About 569 words索引冗余 SQL
SELECT a.TABLE_SCHEMA, a.TABLE_NAME, a.COLUMN_NAME,
a.INDEX_NAME AS 'index1', b.INDEX_NAME AS 'index2'
FROM information_schema.STATISTICS a
JOIN information_schema.STATISTICS b
ON a.TABLE_SCHEMA = b.TABLE_SCHEMA
AND a.TABLE_NAME = b.TABLE_NAME
AND a.SEQ_IN_INDEX = b.SEQ_IN_INDEX
AND a.COLUMN_NAME = b.COLUMN_NAME
WHERE a.SEQ_IN_INDEX = 1 AND a.INDEX_NAME <> b.INDEX_NAME
冗余索引清理规则
- 第一个索引是第二个索引的左前缀索引, 删除第一个索引
- 有主键, 用不到唯一索引, 删除唯一索引
- 有主键, 用不到普通索引, 删除普通索引
- 有唯一索引, 用不到普通索引, 删除普通索引
- 有联合主键索引, 用不到普通组合索引, 删除普通组合索引
- 索引重复, 删除其中一个索引
- 普通索引默认以主键索引做后缀, 重建普通索引
Views: 3,004 · Posted: 2019-04-07
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...