このセクションでは、主にリストアコマンド内の関連パラメータについて説明します。
リストアコマンド関連
コマンド
指定したタイムスタンプまでリストアする
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つのテナントの切り替えのみをサポートしています。 |