説明
このステートメントは、ログストリームのレプリカを削除するために使用されます。
制限事項と注意点
削除後もログストリームが過半数を維持できることを確認してください。そうでない場合、運用コマンドエラーが発生します。
このステートメントは一度に1つのレプリカしか削除できません。
テナント内の同一ログストリームについて、レプリカ移行タスクは複数並行実行可能ですが、その他のディザスタリカバリタスク(レプリカの追加、削除、レプリカタイプの変更、ログストリームの法定メンバー数の変更など)は毎回1つしか実行できません。
説明
sysテナントはビュー
CDB_OB_LS_REPLICA_TASKSを使用して実行中のディザスタリカバリタスクがあるかどうかを確認できます。ユーザーテナントはビューDBA_OB_LS_REPLICA_TASKSを使用して実行中のディザスタリカバリタスクがあるかどうかを確認できます。
権限要件
このステートメントを実行するユーザーは ALTER SYSTEM 権限を持っている必要があります。OceanBaseデータベースの権限の詳細については、MySQLモードの権限分類およびOracleモードの権限分類を参照してください。
構文
ALTER SYSTEM REMOVE REPLICA
LS [=] ls_id
SERVER [=] 'svr_ip:svr_port'
[PAXOS_REPLICA_NUM [=] paxos_replica_num]
[TENANT [=] 'tenant_name'];
パラメータの説明
| パラメータ | 説明 |
|---|---|
| ls_id | 削除するレプリカのログストリームIDを指定します。 |
| svr_ip:svr_port | 削除するレプリカが存在するサーバーのIPアドレスとポート番号を指定します。例:xxx.xx.xxx.001:2882。 |
| paxos_replica_num | オプション。ログストリームのリーダーに対する法定メンバー数を指定します。この値を明示的に指定しない場合、システムは現在のデフォルト値であるpaxos_replica_numを使用します。また、1つのログストリームに対するFレプリカ数は最大7個です。
注意このパラメータの値を指定する際には、以下の条件を満たす必要があります:
|
| tenant_name | オプション。操作対象のテナントを指定します。操作対象のテナントを明示的に指定しない場合、デフォルトのテナント名は現在のテナント名になります。
注意
|
例
sysテナントで以下のコマンドを実行し、テナントmysql001からログストリームレプリカを1つ削除します。
ALTER SYSTEM REMOVE REPLICA
LS = 1001
SERVER = 'xxx.xxx.xxx.001:2882'
PAXOS_REPLICA_NUM = 2
TENANT = 'mysql001';
ログストリームレプリカを削除するその他の例については、レプリカの削減を参照してください。
関連ドキュメント
- ログストリームレプリカを手動で追加する方法については、ADD REPLICAを参照してください。
- ログストリームレプリカのタイプを変更する方法については、MODIFY REPLICAを参照してください。
- ログストリームレプリカを移行する方法については、MIGRATE REPLICAを参照してください。
- ログストリーム
PAXOS_REPLICA_NUMを変更する方法については、MODIFY PAXOS_REPLICA_NUMを参照してください。 - ログストリームレプリカタスクをキャンセルする方法については、CANCEL REPLICA TASKを参照してください。