このセクションでは、主に復元コマンド内の関連パラメータについて説明します。
リストアコマンド関連
コマンド
指定したタイムスタンプまで復元する
ALTER SYSTEM RESTORE dest_tenant_name FROM uri UNTIL TIME='timestamp' WITH 'restore_option' [WITH KEY FROM 'backup_key_path' ENCRYPTED BY 'password'] [DESCRIPTION [=] description];指定したSCNまで復元する
ALTER SYSTEM RESTORE dest_tenant_name FROM uri UNTIL SCN=scn WITH 'restore_option' [WITH KEY FROM 'backup_key_path' ENCRYPTED BY 'password'] [DESCRIPTION [=] description];最新のポイントまで復元する
ALTER SYSTEM RESTORE dest_tenant_name FROM uri WITH 'restore_option' [WITH KEY FROM 'backup_key_path' ENCRYPTED BY 'password'] [DESCRIPTION [=] description];実行中のテナント復元をキャンセルする
ALTER SYSTEM CANCEL RESTORE dest_tenant_name;
パラメータの説明
指定したタイムスタンプ(timestamp)による復元方法では、OceanBaseデータベースはバックアップセット内の最新レコードのタイムゾーンに基づいてタイムスタンプを対応するSCNに変換します。ここでのタイムゾーンは、バックアップテナントのシステム変数 system_time_zone から取得され、そのデフォルト値はCST(中国標準時、+8:00)です。この情報はバックアップセットの locality_info.obbak ファイルに保存されています。
例えば、バックアップ時のテナントのタイムゾーンがCDT(米国中部夏時間帯、-5:00)だった場合、ユーザーが復元時に指定したタイムスタンプが 2025-08-01 10:00:00 だと、実際に復元される時間点は 2025-08-01 15:00:00(標準UTC時間)に対応するSCN値になります。
その他のパラメータの説明については、ALTER SYSTEM - RESTORE を参照してください。
timestampとscnの選択制約
timestamp と scn は、データバックアップビュー CDB_OB_BACKUP_SET_FILES に記録されているデータバックアップの最小復元ポイント MIN_RESTORE_SCN より大きいか等しく、かつログアーカイブビュー CDB_OB_ARCHIVELOG の最大アーカイブポイント CHECKPOINT_SCN より小さいか等しい必要があります。ログアーカイブが途絶える可能性があるため、復元ポイントの選択ではログアーカイブの不連続な区間も考慮する必要があり、復元可能な区間の選択は分割される場合があります。
例を挙げて説明します。ユーザーのバックアップ状況が以下のようであると仮定します:
ログアーカイブを2回実行し、それぞれの
round_idは1、2です。データバックアップを3回実行し、有効なデータバックアップはそれぞれ
full_backup_set_1、full_backup_set_2、inc_backup_set_3です。
物理復元の復元可能な区間は以下の図のようになります。ここで、データバックアップの右端はすべて MIN_RESTORE_SCN です(例えば、データバックアップ full_backup_set_1 の MIN_RESTORE_SCN は図中の scn 300 に対応します)。ログアーカイブの右端はすべて CHECKPOINT_SCN です(例えば、ログアーカイブ round 1 の CHECKPOINT_SCN は図中の scn 500 に対応します)。

ログアーカイブが中断する可能性があるため、復元区間を計算する際には、中間の不連続な時間帯も除外する必要があります。これにより、図中の大括弧で示された範囲のような、分割された復元可能な区間が表現されます:[scn 300, scn 500] \∪ [scn 900, scn 1500]。
パフォーマンスの回復に関する操作
コマンド
ALTER SYSTEM SET ha_high_thread_score =10 TENANT = mysql;
ALTER SYSTEM SET log_restore_concurrency =0 TENANT = mysql;
パラメータの説明
パラメータ |
説明 |
|---|---|
| ha_high_thread_score | データ復元タスクキューが使用するワーカースレッド数を設定します。 |
| log_restore_concurrency | ログ復元の並列数を設定します。 |
Recoverコマンド関連
コマンド
指定したタイムスタンプまでログを巻き戻し、そのタイムスタンプのポイントを含みます。
ALTER SYSTEM RECOVER STANDBY [TENANT [=] tenant_name] UNTIL TIME='timestamp';指定したSCNまでログを巻き戻し、そのSCNのポイントを含みます。
ALTER SYSTEM RECOVER STANDBY [TENANT [=] tenant_name] UNTIL SCN=scn;終点なしで、アーカイブされたソース側のログを継続的に再生します。
ALTER SYSTEM RECOVER STANDBY [TENANT [=] tenant_name] UNTIL UNLIMITED;Recoverをキャンセルします。
ALTER SYSTEM RECOVER STANDBY TENANT [=] tenant_name CANCEL;
パラメータの説明
パラメータ |
説明 |
|---|---|
| tenant_name | テナント名 |
| timestamp | 指定したタイムスタンプまで復元します。timestamp は = で指定し、YYYY-MM-DD HH24:MI:SS.FF 形式で入力してください。小数部(FF)は0~6桁の小数をサポートし、マイクロ秒単位での正確な復元が可能です。 |
| scn | 指定したSCNまで復元します。scn は = で指定し、YYYY-MM-DD HH24:MI:SS.FF 形式で入力してください。小数部(FF)は0~6桁の小数をサポートし、マイクロ秒単位での正確な復元が可能です。 |
| UNLIMITED | 終点なしで復元を続行し、アーカイブされたソース側のログを継続的に再生します。 |
ACTIVATE STANDBYコマンド関連
コマンド
ALTER SYSTEM ACTIVATE STANDBY TENANT tenant_name;
パラメータの説明
パラメータ |
説明 |
|---|---|
| tenant_name | 復元に成功したスタンバイテナント名。現在、各コマンドは1つのテナントの切り替えのみをサポートしています。 |