製品&サポートサービス

pt-duplicate-key-checker

コマンド

pt-duplicate-key-checker [ オプション ] [ DSN ]

【必須項目】

  • ・ [ DSN ] : D=データベース名, h=ホスト名
  • ・ [ オプション ] : -u ユーザ名, -p パスワード

目的

テーブルのインデックスや外部キーの重複チェックをします

指定されたデータベース上のテーブルから重複しているインデックスや外部キーを検索し、それを削除するSQL文を表示します

設定ファイル

上記の必須項目を、設定ファイルにまとめておきます

# touch /etc/percona-toolkit/pt-duplicate-key-checker.conf
# vi /etc/percona-toolkit/pt-duplicate-key-checker.conf

・設定ファイルの作成

# touch /etc/percona-toolkit/pt-duplicate-key-checker.conf

・設定ファイルの編集

# vi /etc/percona-toolkit/pt-duplicate-key-checker.conf
# config for pt-duplicate-key-checker
user=ユーザ名
password=パスワード
h=ホスト名
d=データベース名

シナリオ

以下のコマンドで、"employees"データベースの"employees"テーブルに、"emp_no_emp"をインデックスとして登録します。

mysql> CREATE INDEX emp_no_emp ON employees(emp_no);

"emp_no"カラムはプライマリーキーであるため、インデックスとして機能します
そのため、"emp_no_emp"は重複したインデックスとして認識されます

以下のコマンドで、重複したインデックスをチェックします

# pt-duplicate-key-checker

結果

"idx_id"が重複したインデックスとして検知されました
さらに、赤丸の部分に重複しているインデックスを削除する ALTER文が記述されています
duplicate-key-checker

良い点

インデックス及び、外部キーに重複がないかを容易に確認する事ができます

各データベース保守サービス比較
各データベース保守サービス見積依頼
データベースサポートサービス
MySQL Editions
Oracle Cloudトータルサポート
Percona
MariaDBサブスクリプション
エンタープライズOSSサポート
高可用性ソリューション
OSSシステムソリューション
Navicat
SQL Diagnostic Manager for MySQL
SYNCNEL
OSS保守サポートサービス
Microsoft Azure
お問い合わせ
各MySQL保守サービス見積依頼
スマートスタイルOSSストア
Oracle Gold Partner

ページトップへ