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