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