mysql索引检测_mysql检测重复索引

这篇博客主要讨论了数据库中重复索引的问题,指出在MySQL中可以有相同字段的重复索引,但在Oracle中则不允许。文章使用了pt-query-digest工具来检测并提供了删除MySQL中重复索引的SQL命令,涉及的表包括`test.app_chat_message`和`test.pub_user`。通过消除这些冗余索引,可以提高数据库性能。
摘要由CSDN通过智能技术生成

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

[[email protected] ~]# 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

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文:http://blog.csdn.net/stevendbaguo/article/details/48031441

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值