mysql检测重复索引

   mysql居然可以在相同的字段上重复建索引,oracle是不行的。需要安装pt-query-digest

[root@VM-10 ~]# pt-duplicate-key-checker -h10.10.11.208 -uroot -proot -P3316 --charset=gbk 

# ########################################################################
# test.app_chat_message                                                   
# ########################################################################
# idx_app_chat_message_to_user_from_user is a left-prefix of Index 3
# Key definitions:
#   KEY `idx_app_chat_message_to_user_from_user` (`to_user`,`from_user`),
#   KEY `Index 3` (`to_user`,`from_user`,`message_id`),
# Column types:
#         `to_user` varchar(50) not null default ''
#         `from_user` varchar(50) not null default ''
#         `message_id` varchar(40) not null default ''
# To remove this duplicate index, execute:

ALTER TABLE `test`.`app_chat_message` DROP INDEX `idx_app_chat_message_to_user_from_user`;


# Index 2 is a left-prefix of Index 3
# Key definitions:
#   KEY `Index 2` (`to_user`,`from_user`),
#   KEY `Index 3` (`to_user`,`from_user`,`message_id`),
# Column types:
#         `to_user` varchar(50) not null default ''
#         `from_user` varchar(50) not null default ''
#         `message_id` varchar(40) not null default ''
# To remove this duplicate index, execute:
ALTER TABLE `test`.`app_chat_message` DROP INDEX `Index 2`;
# ########################################################################
# test.pub_user                                                           
# ########################################################################
# phone is a duplicate of phone_idx
# Key definitions:
#   KEY `phone` (`phone`),
#   KEY `phone_idx` (`phone`),
# Column types:
#         `phone` varchar(15) collate utf8_bin default null
# To remove this duplicate index, execute:
ALTER TABLE `test`.`pub_user` DROP INDEX `phone`;

# email is a duplicate of email_idx
# Key definitions:
#   KEY `email` (`email`),
#   KEY `email_idx` (`email`),
# Column types:
#         `email` varchar(50) collate utf8_bin default null
# To remove this duplicate index, execute:
ALTER TABLE `test`.`pub_user` DROP INDEX `email`;

# account is a duplicate of account_idx
# Key definitions:
#   KEY `account` (`account`),
#   KEY `account_idx` (`account`),
# Column types:
#         `account` varchar(50) collate utf8_bin default null
# To remove this duplicate index, execute:
ALTER TABLE `test`.`pub_user` DROP INDEX `account`;
#########################################################################
.........................................................................
.........................................................................
# Size Duplicate Indexes   20358902596
# Total Duplicate Indexes  17
# Total Indexes            664

你可能感兴趣的:(mysql检测重复索引)