千家信息网

MySQL中怎么利用pt-duplicate-key-checker找出冗余、重复索引

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,MySQL中怎么利用pt-duplicate-key-checker找出冗余、重复索引,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。解压
千家信息网最后更新 2024年09月22日MySQL中怎么利用pt-duplicate-key-checker找出冗余、重复索引

MySQL中怎么利用pt-duplicate-key-checker找出冗余、重复索引,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

解压pt软件
# tar xfz percona-toolkit-3.0.2_x86_64.tar.gz

安装对应的perl依赖包
# yum install perl-DBI
# yum install perl-DBD-MySQL

执行pt-duplicate-key-checker命令

  1. # ./bin/pt-duplicate-key-checker -uroot -pcnstrong#123454321 -S /data/mysql01/mysql.sock

  2. # ########################################################################

  3. # beike.ls_lesson

  4. # ########################################################################


  5. # index_lesson_classSubjId is a left-prefix of index_lesson_classSubjId_startTime

  6. # Key definitions:

  7. # KEY `index_lesson_classSubjId` (`classSubjId`),

  8. # KEY `index_lesson_classSubjId_startTime` (`classSubjId`,`startTime`)

  9. # Column types:

  10. # `classsubjid` bigint(20) default null comment '????id'

  11. # `starttime` timestamp null default null comment '????'

  12. # To remove this duplicate index, execute:

  13. ALTER TABLE `beike`.`ls_lesson` DROP INDEX `index_lesson_classSubjId`;


  14. # ########################################################################

  15. # course.QRTZ_BLOB_TRIGGERS

  16. # ########################################################################


  17. # SCHED_NAME is a duplicate of PRIMARY

  18. # Key definitions:

  19. # KEY `SCHED_NAME` (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`),

  20. # PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`),

  21. # Column types:

  22. # `sched_name` varchar(120) not null

  23. # `trigger_name` varchar(200) not null

  24. # `trigger_group` varchar(200) not null

  25. # To remove this duplicate index, execute:

  26. ALTER TABLE `course`.`QRTZ_BLOB_TRIGGERS` DROP INDEX `SCHED_NAME`;


  27. # ########################################################################

  28. # course.QRTZ_FIRED_TRIGGERS

  29. # ########################################################################


  30. # IDX_QRTZ_FT_TRIG_INST_NAME is a left-prefix of IDX_QRTZ_FT_INST_JOB_REQ_RCVRY

  31. # Key definitions:

  32. # KEY `IDX_QRTZ_FT_TRIG_INST_NAME` (`SCHED_NAME`,`INSTANCE_NAME`),

  33. # KEY `IDX_QRTZ_FT_INST_JOB_REQ_RCVRY` (`SCHED_NAME`,`INSTANCE_NAME`,`REQUESTS_RECOVERY`),

  34. # Column types:

  35. # `sched_name` varchar(120) not null

  36. # `instance_name` varchar(200) not null

  37. # `requests_recovery` varchar(1) default null

  38. # To remove this duplicate index, execute:

  39. ALTER TABLE `course`.`QRTZ_FIRED_TRIGGERS` DROP INDEX `IDX_QRTZ_FT_TRIG_INST_NAME`;

看完上述内容,你们掌握MySQL中怎么利用pt-duplicate-key-checker找出冗余、重复索引的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

0