ADMIN SET REPLICA STATUS
説明
この文は、指定されたレプリカのステータスを設定するために使用されます。現在は、特定のレプリカのステータスを手動でBAD、DROP、またはOKに設定し、システムがこれらのレプリカを自動的に修復できるようにする場合にのみ使用されます。
構文
ADMIN SET REPLICA STATUS
PROPERTIES ("tablet_id"="<tablet_id>","backend_id"="<backend_id>","status"="<status>")
必須パラメータ
1. <tablet_id>
レプリカのステータスを設定する必要があるタブレットのID。
2. <backend_id>
レプリカが配置されているBEノードのID。
3. <status>
現在、"drop"、"bad"、"ok"の値のみがサポートされています。 指定されたレプリカが存在しない場合、または既にbad状態にある場合、操作は無視されます。
注意:
-
レプリカをBADステータスに設定する場合
BADとしてマークされたレプリカは読み取りまたは書き込みができません。ただし、レプリカをBADに設定しても常に有効になるとは限りません。レプリカの実際のデータが正しく、BEがレプリカのステータスをOKとして報告する場合、FEは自動的にレプリカをOKに復元します。この操作は直ちにレプリカを削除する可能性があるため、注意して実行してください。
-
レプリカをDROPステータスに設定する場合
DROPとしてマークされたレプリカは引き続き読み取りと書き込みが可能です。システムはDROPレプリカを削除する前に、まず別のマシン上に健全なレプリカを追加します。BADと比較して、レプリカをDROPに設定することはより安全な操作です。
アクセス制御要件
このSQLコマンドを実行するユーザーは、少なくとも以下の権限を持つ必要があります:
| Privilege | Object | 注釈 |
|---|---|---|
| Admin_priv | Database | Table、パーティション、およびシステムレベルのコマンドの管理を含む、データベースでの管理操作の実行に必要です。 |
例
-
BE 10001上のタブレット10003のレプリカをbadに設定する
ADMIN SET REPLICA STATUS PROPERTIES("tablet_id" = "10003", "backend_id" = "10001", "status" = "bad"); -
BE 10001上のtablet 10003のreplicaをdropに設定する
ADMIN SET REPLICA STATUS PROPERTIES("tablet_id" = "10003", "backend_id" = "10001", "status" = "drop"); -
BE 10001 上のタブレット 10003 のレプリカを ok に設定する
ADMIN SET REPLICA STATUS PROPERTIES("tablet_id" = "10003", "backend_id" = "10001", "status" = "ok");