MySQL使用pt-duplicate-key-checker找出冗餘、重複索引

feelpurple發表於2018-02-05
解壓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`;


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-2150853/,如需轉載,請註明出處,否則將追究法律責任。

相關文章