説明
V4.4.2バージョンでは、V4.4.2 BP3バージョンからアーカイブログのバックアップがサポートされています。
ログをアーカイブした後、アーカイブ済みのログデータをバックアップし、ログアーカイブの出力先 LOG_ARCHIVE_DEST にあるフリーズ(FROZEN)状態のアーカイブピースを独立したバックアップ出力先 BACKUP_ARCHIVE_DEST にバックアップできます。バックアップ完了後、元のアーカイブメディア上のログデータは安全に回収でき、アーカイブ容量が解放されるため、アーカイブメディアの容量上限に達してアーカイブが途絶えることを防ぐことができます。
アーカイブログバックアップの典型的なユースケースは以下のとおりです:
- アーカイブ容量の回収:古いアーカイブピースを定期的にバックアップし、
DELETE INPUTオプションを使用して、ソース側にあるバックアップ済みのアーカイブログファイルを自動的にクリーンアップします。 - 階層型ストレージ:ログアーカイブの出力先に最新のログを保存し、バックアップの出力先により古いフリーズログを保存します。
前提条件
アーカイブログバックアップを開始する前に、以下の条件を満たしていることを確認する必要があります:
- アーカイブモードが有効になっていること。テナントの
LOG_MODEがARCHIVELOGの場合にのみ、アーカイブログバックアップを開始できます。アーカイブモードを有効にする操作については、アーカイブモードの有効化を参照してください。
アーカイブログのバックアップ宛先の設定
アーカイブログバックアップを開始する前に、アーカイブログのバックアップ宛先を設定する必要があります。これは、アーカイブログバックアップファイルの保存パスを指定するために使用されます。システムテナントのみが TENANT = <tenant_name> 句を使用して操作対象のテナントを指定する必要があります。ユーザーテナントは自身のテナントに対してのみこの操作を実行できるため、この句を指定する必要はありません。
システムテナントによるアーカイブログのバックアップ宛先の設定
sys テナントは、クラスタ内の指定したユーザーテナントのアーカイブログのバックアップ宛先を設定できます。
rootユーザーでクラスタのsysテナントにログインします。以下のステートメントを実行し、指定したユーザーテナントのアーカイブログのバックアップ宛先を設定します。
ALTER SYSTEM SET BACKUP_ARCHIVE_DEST = 'location=<backup_archive_path>' TENANT = <tenant_name>;ここで、
<backup_archive_path>はバックアップ宛先の保存パスであり、NFS、Alibaba Cloud OSS、Azure Blob、AWS S3、およびS3プロトコル互換のオブジェクトストレージなどのストレージメディアをサポートしています。<backup_archive_path>の詳細な形式については、SET BACKUP_ARCHIVE_DESTを参照してください。説明
アーカイブログのバックアップ宛先は、ログアーカイブの宛先と同じにすることはできません。つまり、BACKUP_ARCHIVE_DEST と LOG_ARCHIVE_DEST の保存パス情報は異なっている必要があります。
例:
バックアップ宛先のストレージメディアがNFSの場合。
obclient [(none)]> ALTER SYSTEM SET BACKUP_ARCHIVE_DEST = 'location=file:///data/nfs/backup/backup_archive' TENANT = mysql_tenant;バックアップ宛先のストレージメディアがOSSの場合。
obclient [(none)]> ALTER SYSTEM SET BACKUP_ARCHIVE_DEST = 'location=oss://oceanbase-test-bucket/backup/backup_archive?host=****.aliyun-inc.com&access_id=****&access_key=****' TENANT = mysql_tenant;
ユーザーテナントによるアーカイブログのバックアップ宛先の設定
ユーザーテナントは自身のテナントに対してアーカイブログのバックアップ宛先を設定でき、他のテナントには影響しません。
テナント管理者がデータベースにログインします。
この例では、
rootユーザーでmysql_tenantテナントにログインするか、SYSユーザーでoracle_tenantテナントにログインすることができます。以下のステートメントを実行し、自身のテナントのアーカイブログバックアップ宛先を設定します。
ALTER SYSTEM SET BACKUP_ARCHIVE_DEST = 'location=<backup_archive_path>';説明
アーカイブログのバックアップ宛先は、ログアーカイブの宛先と同じにすることはできません。つまり、BACKUP_ARCHIVE_DESTとLOG_ARCHIVE_DESTのストレージパス情報は異なっている必要があります。
例:
バックアップ宛先のストレージメディアはNFSです。
obclient [(none)]> ALTER SYSTEM SET BACKUP_ARCHIVE_DEST = 'location=file:///data/nfs/backup/backup_archive';バックアップ宛先のストレージメディアはOSSです。
obclient [(none)]> ALTER SYSTEM SET BACKUP_ARCHIVE_DEST = 'location=oss://oceanbase-test-bucket/backup/backup_archive?host=****.aliyun-inc.com&access_id=****&access_key=****';
アーカイブログバックアップ宛先設定の確認
バックアップ宛先の設定が成功すると、以下のビューを使用して設定情報を照会できます。
システムテナントはCDB_ビューを使用して、すべてのテナントのバックアップ宛先設定を確認できます。
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_BACKUP_STORAGE_INFO WHERE dest_type = 'backup_archive_log';
クエリ結果は次のとおりです:
+-----------+------------------------+----------+---------+--------------------+---------------+-----------+-----------------------------------------+----------------------------+----------+---------------+-----------------------+--------+
| TENANT_ID | PATH | ENDPOINT | DEST_ID | DEST_TYPE | AUTHORIZATION | EXTENSION | CHECK_FILE_NAME | LAST_CHECK_TIMESTAMP | MAX_IOPS | MAX_BANDWIDTH | MAX_BANDWIDTH_DISPLAY | STATUS |
+-----------+------------------------+----------+---------+--------------------+---------------+-----------+-----------------------------------------+----------------------------+----------+---------------+-----------------------+--------+
| 1002 | file:///data/backuparg | | 1004 | backup_archive_log | | | 1002_connect_file_20260831T154520.obbak | 2026-08-31 15:45:20.327659 | 0 | 0 | UNLIMITED | NORMAL |
+-----------+------------------------+----------+---------+--------------------+---------------+-----------+-----------------------------------------+----------------------------+----------+---------------+-----------------------+--------+
1 row in set
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_ARCHIVE_DEST WHERE name LIKE '%backup_archive%';
クエリ結果は次のとおりです:
+-----------+---------+------------------------+------------------------+
| TENANT_ID | DEST_NO | NAME | VALUE |
+-----------+---------+------------------------+------------------------+
| 1002 | 10000 | backup_archive_dest_id | 1004 |
| 1002 | 10000 | backup_archive_path | file:///data/backuparg |
| 1002 | 10000 | backup_archive_state | ENABLE |
+-----------+---------+------------------------+------------------------+
3 rows in set
クエリ結果では、CDB_OB_BACKUP_STORAGE_INFOビューのPATHフィールドがアーカイブログバックアップ宛先のストレージパスであり、DEST_TYPEフィールドの値がbackup_archive_logであることから、この宛先のタイプがアーカイブログバックアップ宛先であることを示しています。CDB_OB_ARCHIVE_DESTビューでは、backup_archive_pathの値がアーカイブログバックアップ宛先のパス、backup_archive_dest_idの値がその宛先のdest_id、backup_archive_stateの値がENABLEであることから、このバックアップ宛先が有効状態であることを示しています。
ユーザーテナントはDBA_ビューを使用して、自身のテナントのバックアップ宛先設定を確認できます。
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_BACKUP_STORAGE_INFO WHERE dest_type = 'backup_archive_log';
クエリ結果は次のとおりです:
+-----------+------------------------+----------+---------+--------------------+---------------+-----------+-----------------------------------------+----------------------------+----------+---------------+-----------------------+--------+
| TENANT_ID | PATH | ENDPOINT | DEST_ID | DEST_TYPE | AUTHORIZATION | EXTENSION | CHECK_FILE_NAME | LAST_CHECK_TIMESTAMP | MAX_IOPS | MAX_BANDWIDTH | MAX_BANDWIDTH_DISPLAY | STATUS |
+-----------+------------------------+----------+---------+--------------------+---------------+-----------+-----------------------------------------+----------------------------+----------+---------------+-----------------------+--------+
| 1002 | file:///data/backuparg | | 1004 | backup_archive_log | | | 1002_connect_file_20260831T154520.obbak | 2026-08-31 15:45:20.327659 | 0 | 0 | UNLIMITED | NORMAL |
+-----------+------------------------+----------+---------+--------------------+---------------+-----------+-----------------------------------------+----------------------------+----------+---------------+-----------------------+--------+
1 row in set
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_ARCHIVE_DEST WHERE name LIKE '%backup_archive%';
クエリ結果は次のとおりです:
+---------+------------------------+------------------------+
| DEST_NO | NAME | VALUE |
+---------+------------------------+------------------------+
| 10000 | backup_archive_dest_id | 1004 |
| 10000 | backup_archive_path | file:///data/backuparg |
| 10000 | backup_archive_state | ENABLE |
+---------+------------------------+------------------------+
3 rows in set
説明
バックアップ宛先の設定が有効になると、今後開始されるアーカイブログバックアップはこの宛先を使用します。バックアップ宛先が設定されていない場合、アーカイブログバックアップタスクは正常に実行できません。
詳細については、CDB_OB_BACKUP_STORAGE_INFOおよびCDB_OB_ARCHIVE_DESTを参照してください。
アーカイブログバックアップの開始
バックアップ宛先の設定が完了したら、ALTER SYSTEM BACKUP ARCHIVELOG ステートメントを使用してアーカイブログバックアップを開始できます。ステートメントは以下のとおりです:
ALTER SYSTEM BACKUP ARCHIVELOG ALL [DELETE INPUT] [TENANT = <tenant_name>];
DELETE INPUT オプションを指定するかどうかによって、アーカイブログバックアップの動作は異なります:
DELETE INPUTを指定しない場合、アーカイブ済みのログデータのみをBACKUP_ARCHIVE_DESTにバックアップし、ソース側のアーカイブログファイルは削除しません。DELETE INPUTを指定した場合、現在のタスクでFROZEN状態のすべてのPieceが正常にバックアップされた後にのみ、システムはクリーンアップタスクを生成し、ソース側にあるバックアップ済みのアーカイブログファイルを自動的に削除してストレージ容量を解放します。アーカイブログバックアップタスクが失敗した場合は、ソース側のコピーはクリーンアップされません。
アーカイブログバックアップのタスク説明は以下のとおりです:
- アーカイブログバックアップは非同期タスクであり、ステートメントの実行が成功したことは、タスクが作成・送信されたことを意味するだけです。タスクはバックグラウンドで実行され、バックアップタスク関連のビューでタスクの進捗状況と結果を確認できます。
- アーカイブログバックアップはPiece単位で処理され、コピー後も元のディレクトリ構造とファイル形式を完全に保持し、アーカイブログに一切の変更を加えません。
- アーカイブログバックアップはFROZEN状態のPieceのみを処理し、Pieceのフリーズを自動的にトリガーしたり、書き込み中のACTIVE Pieceをバックアップしたりすることはありません。また、ログアーカイブがソース側のACTIVE Pieceへの書き込みを継続することにも影響しません。FROZEN状態のPieceが存在しない場合、タスクは正常に完了しますが、データはコピーされません。
- タスク開始時に、今回バックアップ対象となるPieceが特定されます。既にバックアップ済みのPieceは再度バックアップされません。タスク実行中に新たにフリーズしたPieceは、次回のアーカイブログバックアップタスクで処理されます。
- Pieceのバックアップが成功すると、そのPieceのバックアップ宛先上のコピーファイルの状態は
AVAILABLEに更新されます。
説明
アーカイブログバックアップはPieceごとに並列スケジューリングされ、ファイルレベルでログアーカイブ宛先からバックアップ宛先へデータをコピーします。単一Pieceのコピーは、ログストリームディレクトリに従って分割・並列実行されます。コピー速度はPieceのデータサイズ、および両宛先のストレージの読み書きスループットとリクエスト遅延に依存し、このプロセスではOBServerノード上で追加のI/Oオーバーヘッドは発生しません。
システムテナントによるアーカイブログバックアップの開始
sys テナントは、クラスタ内の指定されたテナントに対してアーカイブログバックアップを開始できます。このコマンドを実行する際、システムテナントのみが TENANT = <tenant_name> 句を使用して操作対象のテナントを指定する必要があります。
rootユーザーでクラスタのsysテナントにログインします。以下のステートメントを実行して、アーカイブログバックアップを開始します。
mysql_tenantテナントに対してアーカイブログバックアップを開始する例:obclient [(none)]> ALTER SYSTEM BACKUP ARCHIVELOG ALL TENANT = mysql_tenant;mysql_tenantテナントに対してアーカイブログバックアップを開始し、バックアップ完了後にソース側のアーカイブログファイルを自動的に削除する例:obclient [(none)]> ALTER SYSTEM BACKUP ARCHIVELOG ALL DELETE INPUT TENANT = mysql_tenant;
コマンドが正常に実行されると、システムは指定されたテナントに対してアーカイブログバックアップを開始します。
ユーザーテナントによるアーカイブログバックアップの開始
ユーザーテナントは自身のテナントに対してアーカイブログバックアップを開始でき、他のテナントには影響しません。ユーザーテナントは自身のテナントでのみこのコマンドを実行できるため、TENANT 句を指定する必要はありません。
テナント管理者がデータベースにログインします。
この例では、
rootユーザーでmysql_tenantテナントにログインするか、SYSユーザーでoracle_tenantテナントにログインすることができます。以下のステートメントを実行して、アーカイブログバックアップを開始します。
自身のテナントに対してアーカイブログバックアップを開始する例:
obclient [(none)]> ALTER SYSTEM BACKUP ARCHIVELOG ALL;自身のテナントに対してアーカイブログバックアップを開始し、バックアップ完了後にソース側のアーカイブログファイルを自動的に削除する例:
obclient [(none)]> ALTER SYSTEM BACKUP ARCHIVELOG ALL DELETE INPUT;
コマンドが正常に実行されると、システムは該当テナントに対してアーカイブログバックアップを開始します。
アーカイブログバックアップの進捗と結果を確認する
アーカイブログバックアップを正常に開始した後、以下のビューで対応するアーカイブログバックアップの進捗状況とバックアップ履歴を確認できます。バックアップ開始時に DELETE INPUT を指定したかどうかによって、クエリ時の BACKUP_TYPE が異なります:ALTER SYSTEM BACKUP ARCHIVELOG ALL でバックアップを開始した場合、BACKUP_TYPE は BACKUP_ARCHIVE です。ALTER SYSTEM BACKUP ARCHIVELOG ALL DELETE INPUT でバックアップを開始した場合、BACKUP_TYPE は BACKUP_ARCHIVE_DELETE_INPUT です。
システムテナントは CDB_OB_BACKUP_JOBS および CDB_OB_BACKUP_JOB_HISTORY ビューを使用して、すべてのテナントのバックアップタスクを確認できます。
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_BACKUP_JOBS WHERE BACKUP_TYPE = 'BACKUP_ARCHIVE';
クエリ結果は次のとおりです:
+-----------+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+---------------+--------+--------+---------+-------------+------------------------+
| TENANT_ID | JOB_ID | INCARNATION | BACKUP_SET_ID | INITIATOR_TENANT_ID | INITIATOR_JOB_ID | EXECUTOR_TENANT_ID | PLUS_ARCHIVELOG | BACKUP_TYPE | JOB_LEVEL | ENCRYPTION_MODE | PASSWD | START_TIMESTAMP | END_TIMESTAMP | STATUS | RESULT | COMMENT | DESCRIPTION | PATH |
+-----------+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+---------------+--------+--------+---------+-------------+------------------------+
| 1002 | 2 | 1 | 0 | 1 | 0 | 1002 | OFF | BACKUP_ARCHIVE | USER_TENANT | NONE | | 2026-09-01 11:26:49.540304 | NULL | DOING | 0 | | | file:///data/backuparg |
+-----------+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+---------------+--------+--------+---------+-------------+------------------------+
1 row in set
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_BACKUP_JOB_HISTORY WHERE BACKUP_TYPE = 'BACKUP_ARCHIVE';
クエリ結果は次のとおりです:
+-----------+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+----------------------------+-----------+--------+---------+-------------+------------------------+
| TENANT_ID | JOB_ID | INCARNATION | BACKUP_SET_ID | INITIATOR_TENANT_ID | INITIATOR_JOB_ID | EXECUTOR_TENANT_ID | PLUS_ARCHIVELOG | BACKUP_TYPE | JOB_LEVEL | ENCRYPTION_MODE | PASSWD | START_TIMESTAMP | END_TIMESTAMP | STATUS | RESULT | COMMENT | DESCRIPTION | PATH |
+-----------+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+----------------------------+-----------+--------+---------+-------------+------------------------+
| 1002 | 2 | 1 | 0 | 1 | 0 | 1002 | OFF | BACKUP_ARCHIVE | USER_TENANT | NONE | | 2026-09-01 11:26:49.540304 | 2026-09-01 11:26:49.570966 | COMPLETED | 0 | | | file:///data/backuparg |
+-----------+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+----------------------------+-----------+--------+---------+-------------+------------------------+
1 row in set
ユーザーテナントは DBA_OB_BACKUP_JOBS および DBA_OB_BACKUP_JOB_HISTORY ビューを使用して、自身のテナントのバックアップタスクを確認できます。
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_BACKUP_JOBS WHERE BACKUP_TYPE = 'BACKUP_ARCHIVE';
クエリ結果は次のとおりです:
+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+---------------+--------+--------+---------+-------------+------------------------+
| JOB_ID | INCARNATION | BACKUP_SET_ID | INITIATOR_TENANT_ID | INITIATOR_JOB_ID | EXECUTOR_TENANT_ID | PLUS_ARCHIVELOG | BACKUP_TYPE | JOB_LEVEL | ENCRYPTION_MODE | PASSWD | START_TIMESTAMP | END_TIMESTAMP | STATUS | RESULT | COMMENT | DESCRIPTION | PATH |
+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+---------------+--------+--------+---------+-------------+------------------------+
| 2 | 1 | 0 | 1 | 0 | 1002 | OFF | BACKUP_ARCHIVE | USER_TENANT | NONE | | 2026-09-01 11:26:49.540304 | NULL | DOING | 0 | | | file:///data/backuparg |
+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+---------------+--------+--------+---------+-------------+------------------------+
1 row in set
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_BACKUP_JOB_HISTORY WHERE BACKUP_TYPE = 'BACKUP_ARCHIVE';
クエリ結果は次のとおりです:
+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+----------------------------+-----------+--------+---------+-------------+------------------------+
| JOB_ID | INCARNATION | BACKUP_SET_ID | INITIATOR_TENANT_ID | INITIATOR_JOB_ID | EXECUTOR_TENANT_ID | PLUS_ARCHIVELOG | BACKUP_TYPE | JOB_LEVEL | ENCRYPTION_MODE | PASSWD | START_TIMESTAMP | END_TIMESTAMP | STATUS | RESULT | COMMENT | DESCRIPTION | PATH |
+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+----------------------------+-----------+--------+---------+-------------+------------------------+
| 2 | 1 | 0 | 1 | 0 | 1002 | OFF | BACKUP_ARCHIVE | USER_TENANT | NONE | | 2026-09-01 11:26:49.540304 | 2026-09-01 11:26:49.570966 | COMPLETED | 0 | | | file:///data/backuparg |
+--------+-------------+---------------+---------------------+------------------+--------------------+-----------------+----------------+-------------+-----------------+--------+----------------------------+----------------------------+-----------+--------+---------+-------------+------------------------+
1 row in set
アーカイブログバックアップタスクが正常に実行されたかどうかの判断基準は、ビュー内の STATUS フィールドの値が COMPLETED であり、RESULT フィールドの値が 0 であることです。
説明
アーカイブログバックアップジョブレコードについて、ビューに表示される BACKUP_SET_ID と PLUS_ARCHIVELOG には実際の意味はありません。
詳細については、CDB_OB_BACKUP_JOBSおよびCDB_OB_BACKUP_JOB_HISTORYを参照してください。
アーカイブピースのバックアップ状態を確認する
システムテナントは CDB_OB_ARCHIVELOG_PIECE_FILES ビューを使用して、すべてのテナントのアーカイブピースのソース側およびバックアップ宛先側の状態を確認できます。
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_ARCHIVELOG_PIECE_FILES;
クエリ結果は次のとおりです:
+-----------+---------+----------+----------+-------------+---------+--------+---------------------+----------------------------+---------------------+----------------------------+---------------------+---------------------+----------------------------+------------+-----------+-------------+-------------+---------------------+--------------+----------------------+-------------------+-------------+---------------------+--------------------+
| TENANT_ID | DEST_ID | ROUND_ID | PIECE_ID | INCARNATION | DEST_NO | STATUS | START_SCN | START_SCN_DISPLAY | CHECKPOINT_SCN | CHECKPOINT_SCN_DISPLAY | MAX_SCN | END_SCN | END_SCN_DISPLAY | COMPATIBLE | UNIT_SIZE | COMPRESSION | INPUT_BYTES | INPUT_BYTES_DISPLAY | OUTPUT_BYTES | OUTPUT_BYTES_DISPLAY | COMPRESSION_RATIO | FILE_STATUS | PATH | BACKUP_FILE_STATUS |
+-----------+---------+----------+----------+-------------+---------+--------+---------------------+----------------------------+---------------------+----------------------------+---------------------+---------------------+----------------------------+------------+-----------+-------------+-------------+---------------------+--------------+----------------------+-------------------+-------------+---------------------+--------------------+
| 1002 | 1001 | 1 | 1 | 1 | 0 | ACTIVE | 1788162262645930000 | 2026-08-31 15:44:22.645930 | 1788233331143196000 | 2026-09-01 11:28:51.143196 | 1788233347764010000 | 1788248662645930000 | 2026-09-01 15:44:22.645930 | 1 | 1 | none | 204985275 | 195.49MB | 204985275 | 195.49MB | 1.00 | AVAILABLE | file:///data/arglog | INCOMPLETE |
+-----------+---------+----------+----------+-------------+---------+--------+---------------------+----------------------------+---------------------+----------------------------+---------------------+---------------------+----------------------------+------------+-----------+-------------+-------------+---------------------+--------------+----------------------+-------------------+-------------+---------------------+--------------------+
1 row in set
ユーザーテナントは DBA_OB_ARCHIVELOG_PIECE_FILES ビューを使用して、自身のテナントにおけるアーカイブピースのソース側およびバックアップ宛先側の状態を確認できます。
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_ARCHIVELOG_PIECE_FILES;
クエリ結果は次のとおりです:
+---------+----------+----------+-------------+---------+--------+---------------------+----------------------------+---------------------+----------------------------+---------------------+---------------------+----------------------------+------------+-----------+-------------+-------------+---------------------+--------------+----------------------+-------------------+-------------+---------------------+--------------------+
| DEST_ID | ROUND_ID | PIECE_ID | INCARNATION | DEST_NO | STATUS | START_SCN | START_SCN_DISPLAY | CHECKPOINT_SCN | CHECKPOINT_SCN_DISPLAY | MAX_SCN | END_SCN | END_SCN_DISPLAY | COMPATIBLE | UNIT_SIZE | COMPRESSION | INPUT_BYTES | INPUT_BYTES_DISPLAY | OUTPUT_BYTES | OUTPUT_BYTES_DISPLAY | COMPRESSION_RATIO | FILE_STATUS | PATH | BACKUP_FILE_STATUS |
+---------+----------+----------+-------------+---------+--------+---------------------+----------------------------+---------------------+----------------------------+---------------------+---------------------+----------------------------+------------+-----------+-------------+-------------+---------------------+--------------+----------------------+-------------------+-------------+---------------------+--------------------+
| 1001 | 1 | 1 | 1 | 0 | ACTIVE | 1788162262645930000 | 2026-08-31 15:44:22.645930 | 1788233331143196000 | 2026-09-01 11:28:51.143196 | 1788233347764010000 | 1788248662645930000 | 2026-09-01 15:44:22.645930 | 1 | 1 | none | 204985275 | 195.49MB | 204985275 | 195.49MB | 1.00 | AVAILABLE | file:///data/arglog | INCOMPLETE |
+---------+----------+----------+-------------+---------+--------+---------------------+----------------------------+---------------------+----------------------------+---------------------+---------------------+----------------------------+------------+-----------+-------------+-------------+---------------------+--------------+----------------------+-------------------+-------------+---------------------+--------------------+
1 row in set
ここで、FILE_STATUS フィールドはソース側レプリカの状態を示し、BACKUP_FILE_STATUS フィールドはバックアップ宛先側レプリカの状態を示します。一般的な状態の組み合わせとその意味は、次の表のとおりです。
FILE_STATUS |
BACKUP_FILE_STATUS |
意味 |
|---|---|---|
| AVAILABLE | INCOMPLETE | ソース側レプリカは利用可能、バックアップ宛先側レプリカは利用不可 |
| AVAILABLE | AVAILABLE | バックアップ宛先側レプリカのコピーが完了し、利用可能 |
| DELETED | AVAILABLE | ソース側レプリカがクリーンアップされ、バックアップ宛先側レプリカは利用可能 |
詳細については、CDB_OB_ARCHIVELOG_PIECE_FILESを参照してください。
DELETE INPUTのクリーンアップ結果の確認
DELETE INPUT オプションを使用してアーカイブログバックアップを開始する場合、以下のビューを使用して、ソース側レプリカのクリーンアップタスクの実行進捗状況と履歴を確認することもできます。
システムテナントは CDB_OB_BACKUP_DELETE_JOBS および CDB_OB_BACKUP_DELETE_JOB_HISTORY ビューを使用して、すべてのテナントのクリーンアップタスクを確認できます。
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_BACKUP_DELETE_JOBS WHERE TYPE = 'DELETE BACKED UP ARCHIVELOG PIECE';
クエリ結果は次のとおりです:
+-----------+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+---------------+--------+------------+--------------------+--------+---------+
| TENANT_ID | JOB_ID | INCARNATION | INITIATOR_TENANT_ID | INITIATOR_JOB_ID | EXECUTOR_TENANT_ID | TYPE | PARAMETER | JOB_LEVEL | START_TIMESTAMP | END_TIMESTAMP | STATUS | TASK_COUNT | SUCCESS_TASK_COUNT | RESULT | COMMENT |
+-----------+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+---------------+--------+------------+--------------------+--------+---------+
| 1002 | 1 | 1 | 1002 | 3 | 1002 | DELETE BACKED UP ARCHIVELOG PIECE | | USER_TENANT | 2026-09-01 11:35:30.246810 | NULL | DOING | 1 | 0 | 0 | |
+-----------+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+---------------+--------+------------+--------------------+--------+---------+
1 row in set
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_BACKUP_DELETE_JOB_HISTORY WHERE TYPE = 'DELETE BACKED UP ARCHIVELOG PIECE';
クエリ結果は次のとおりです:
+-----------+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+----------------------------+-----------+------------+--------------------+--------+---------+
| TENANT_ID | JOB_ID | INCARNATION | INITIATOR_TENANT_ID | INITIATOR_JOB_ID | EXECUTOR_TENANT_ID | TYPE | PARAMETER | JOB_LEVEL | START_TIMESTAMP | END_TIMESTAMP | STATUS | TASK_COUNT | SUCCESS_TASK_COUNT | RESULT | COMMENT |
+-----------+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+----------------------------+-----------+------------+--------------------+--------+---------+
| 1002 | 1 | 1 | 1002 | 3 | 1002 | DELETE BACKED UP ARCHIVELOG PIECE | | USER_TENANT | 2026-09-01 11:35:30.246810 | 2026-09-01 11:35:31.135790 | COMPLETED | 1 | 1 | 0 | |
+-----------+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+----------------------------+-----------+------------+--------------------+--------+---------+
1 row in set
ユーザーテナントは DBA_OB_BACKUP_DELETE_JOBS および DBA_OB_BACKUP_DELETE_JOB_HISTORY ビューを使用して、自身のテナントのクリーンアップタスクを確認できます。
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_BACKUP_DELETE_JOBS WHERE TYPE = 'DELETE BACKED UP ARCHIVELOG PIECE';
クエリ結果は次のとおりです:
+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+---------------+--------+------------+--------------------+--------+---------+
| JOB_ID | INCARNATION | INITIATOR_TENANT_ID | INITIATOR_JOB_ID | EXECUTOR_TENANT_ID | TYPE | PARAMETER | JOB_LEVEL | START_TIMESTAMP | END_TIMESTAMP | STATUS | TASK_COUNT | SUCCESS_TASK_COUNT | RESULT | COMMENT |
+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+---------------+--------+------------+--------------------+--------+---------+
| 1 | 1 | 1002 | 3 | 1002 | DELETE BACKED UP ARCHIVELOG PIECE | | USER_TENANT | 2026-09-01 11:35:30.246810 | NULL | DOING | 1 | 0 | 0 | |
+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+---------------+--------+------------+--------------------+--------+---------+
1 row in set
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_BACKUP_DELETE_JOB_HISTORY WHERE TYPE = 'DELETE BACKED UP ARCHIVELOG PIECE';
クエリ結果は次のとおりです:
+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+----------------------------+-----------+------------+--------------------+--------+---------+
| JOB_ID | INCARNATION | INITIATOR_TENANT_ID | INITIATOR_JOB_ID | EXECUTOR_TENANT_ID | TYPE | PARAMETER | JOB_LEVEL | START_TIMESTAMP | END_TIMESTAMP | STATUS | TASK_COUNT | SUCCESS_TASK_COUNT | RESULT | COMMENT |
+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+----------------------------+-----------+------------+--------------------+--------+---------+
| 1 | 1 | 1002 | 3 | 1002 | DELETE BACKED UP ARCHIVELOG PIECE | | USER_TENANT | 2026-09-01 11:35:30.246810 | 2026-09-01 11:35:31.135790 | COMPLETED | 1 | 1 | 0 | |
+--------+-------------+---------------------+------------------+--------------------+-----------------------------------+-----------+-------------+----------------------------+----------------------------+-----------+------------+--------------------+--------+---------+
1 row in set
クリーンアップタスクの実行成功の判断基準は、ビュー内の STATUS フィールドの値が COMPLETED であり、かつ RESULT フィールドの値が 0 であることです。
詳細については、CDB_OB_BACKUP_DELETE_JOBSおよびCDB_OB_BACKUP_DELETE_JOB_HISTORYを参照してください。
注意事項
DELETE INPUTはソース側の物理レプリカを削除します。使用する前に、バックアップ先のストレージの信頼性とアクセス可能性を確認し、リストアプロセスも検証してください。CDCを使用してアーカイブデータを直接消費する必要がある場合は、
DELETE INPUTオプションの使用は推奨されません。ソース側のFROZEN状態のPieceがクリーンアップされると、CDCがデータディクショナリを読み取れなくなる可能性があります。バックアップ先にはFROZEN状態のPieceのみが保存されます。より新しいポイントへのリストア時には、通常、新しいPieceとACTIVE状態の末尾部分を含むログアーカイブ先を提供する必要があります。リストア時には、データバックアップパス、ログアーカイブパス、アーカイブログバックアップパスを同時に指定できます。システムは必要に応じて対応するPieceを読み取ります。関連する操作については、リストアの開始を参照してください。
現在のバックアップクリーンアップポリシーはアーカイブログバックアップに対応しています。バックアップクリーンアップ設定の
RECOVERY_WINDOWはバックアップ先のレプリカにも適用されます。つまり、ログアーカイブ先とバックアップ先はdefaultまたはlog_onlyクリーンアップポリシーのクリーンアップ境界を共有し、それぞれの出力先に独立したRECOVERY_WINDOWを設定することはサポートされていません。自動的に期限切れバックアップをクリーンアップする操作の詳細については、自動的に期限切れバックアップをクリーンアップするを参照してください。アーカイブログバックアップと期限切れバックアップのクリーンアップタスクは同一テナント上で同時実行できません。システムはどちらか一方のタスクを拒否または遅延させます。
アーカイブログバックアップは他のタスクと以下の排他関係にあります:
BACKUP_ARCHIVE_DESTの変更とアーカイブログバックアップの開始は排他的です:BACKUP_ARCHIVE_DESTを変更している間にアーカイブログバックアップを開始すると失敗します。アーカイブログバックアップタスクが終了していない間はBACKUP_ARCHIVE_DESTの変更を許可せず、システムはOPT_NOT_ALLOWエラーを返します。BACKUP_ARCHIVE_DESTの変更とPLUS ARCHIVELOGパラメータを持つデータバックアップタスクは排他的です:PLUS ARCHIVELOGパラメータを持つデータバックアップタスクの実行中には、BACKUP_ARCHIVE_DESTからPieceファイルをコピーする可能性があるため、Pieceがコピーされながら削除される状況を避けるために、BACKUP_ARCHIVE_DESTを変更している間にPLUS ARCHIVELOGパラメータを持つデータバックアップタスクを開始すると失敗します。PLUS ARCHIVELOGパラメータを持つデータバックアップタスクの実行中にBACKUP_ARCHIVE_DESTを変更すると、変更操作が失敗し、システムはOPT_NOT_ALLOWエラーを返します。DELETE INPUTを伴うアーカイブログバックアップによって開始されるソース側レプリカのクリーンアップタスクと、PLUS ARCHIVELOGパラメータを持つデータバックアップタスクは排他的です:クリーンアップタスクを開始する前に、システムは同一テナント内で実行中のPLUS ARCHIVELOGパラメータを持つデータバックアップタスクがないかチェックします。もしある場合、アーカイブログバックアップは正常に実行されますが、対応するクリーンアップタスクは失敗します。PLUS ARCHIVELOGパラメータを持つデータバックアップタスクを開始する前に、システムは実行中のソース側レプリカのクリーンアップタスクがないかチェックします。もしある場合、そのデータバックアップタスクは失敗し、クリーンアップタスクが終了するのを待ってから再度開始する必要があります。