に最終更新
REPAIR TABLE
説明
REPAIR TABLE 文は、指定したテーブルまたはパーティションのレプリカの修復を優先するために使用します。この文には次の機能があります。
- テーブル全体のすべてのレプリカを修復できます。
- 指定したパーティションのレプリカを修復できます。
- レプリカの修復を高い優先度で実行します。
- 修復のタイムアウトを設定できます。
構文
ADMIN REPAIR TABLE <table_name> [ PARTITION (<partition_name> [, ...]) ];
必須パラメーター
1. <table_name>
修復するテーブルの名前を指定します。
テーブル名は、そのデータベース内で一意である必要があります。
オプションパラメーター
1. PARTITION (<partition_name> [, ...])
修復するパーティション名の一覧を指定します。
このパラメーターを指定しない場合は、テーブル全体のすべてのパーティションを修復します。
アクセス権限
この SQL コマンドを実行するユーザーには、少なくとも次の権限が必要です。
| 権限 | 対象 | 備考 |
|---|---|---|
| ADMIN | システム | このコマンドを実行するには、ADMIN 権限が必要です。 |
使用上の注意
- この文は、指定したレプリカの修復を高い優先度で試みるようシステムに指示しますが、修復の成功は保証されません。
- デフォルトのタイムアウトは 14,400 秒(4 時間)です。
- タイムアウト後は、指定したレプリカの修復が優先されなくなります。
- 修復がタイムアウトした場合は、修復を続けるためにこのコマンドを再実行する必要があります。
- 修復の進捗は、
SHOW REPLICA STATUSコマンドで確認できます。 - このコマンドは、システムの通常のレプリカ修復機構には影響しません。指定したテーブルまたはパーティションの修復優先度を上げるだけです。
例
-
テーブル全体のすべてのレプリカを修復する場合:
ADMIN REPAIR TABLE tbl1; -
指定したパーティションのレプリカを修復する場合:
ADMIN REPAIR TABLE tbl1 PARTITION (p1, p2); -
修復の進捗を確認する場合:
SHOW REPLICA STATUS FROM tbl1;