1. BACKUP KEEPコマンドとは
RMAN(Recovery Manager)のBACKUP KEEPコマンドは、特定のバックアップを長期間保持し、リカバリ・ウィンドウのポリシーに関係なく削除されないようにするための機能です。特に、長期保存が必要なアーカイブバックアップや法的要件に基づく保持が求められる場合に有用です。
通常のRMANバックアップは、リカバリ・ウィンドウや冗長性ポリシーに基づいて不要になった際に削除されますが、BACKUP KEEPオプションを使用すると、指定した期間または無期限でバックアップを保持できます。
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?
2. BACKUP KEEPコマンドの基本構文
BACKUP KEEPを使用して長期間バックアップを保持する基本構文を示します。
BACKUP AS BACKUPSET KEEP UNTIL TIME 'SYSDATE+30' DATABASE;
オプションの詳細
AS BACKUPSET:バックアップセットとして保存(デフォルト)KEEP UNTIL TIME 'SYSDATE+30':30日間バックアップを保持DATABASE:データベース全体をバックアップ
3. アーカイブバックアップの取得方法
長期間アーカイブログを保存する場合、BACKUP KEEPを利用してバックアップを取得できます。
3.1 すべてのアーカイブログを保持
BACKUP AS BACKUPSET KEEP UNTIL TIME 'SYSDATE+90' ARCHIVELOG ALL;
このコマンドは、すべてのアーカイブログを90日間保持します。
3.2 特定のSCN以降のアーカイブログをバックアップ
BACKUP AS BACKUPSET KEEP UNTIL TIME 'SYSDATE+180' ARCHIVELOG FROM SCN 100000;
このコマンドは、SCN 100000 以降のアーカイブログを取得し、180日間保持します。
3.3 特定の期間のアーカイブログをバックアップ
BACKUP AS BACKUPSET KEEP UNTIL TIME 'SYSDATE+365' ARCHIVELOG FROM TIME 'SYSDATE-7' UNTIL TIME 'SYSDATE';
このコマンドは、過去7日間のアーカイブログのみを取得し、1年間保持します。
4. KEEP FOREVER を使用した無期限保持
バックアップを無期限に保持する場合は、KEEP FOREVER を使用します。
BACKUP AS BACKUPSET KEEP FOREVER ARCHIVELOG ALL;
このコマンドは、すべてのアーカイブログを無期限に保持します。
5. BACKUP KEEPを使用したフルデータベースバックアップ
長期間保持するフルデータベースバックアップを取得する方法を示します。
BACKUP AS BACKUPSET KEEP UNTIL TIME 'SYSDATE+365' DATABASE PLUS ARCHIVELOG;
このコマンドは、
- データベース全体とアーカイブログをバックアップ
- 1年間(365日)保持
5.1 KEEP FOREVER を使用した無期限バックアップ
BACKUP AS BACKUPSET KEEP FOREVER DATABASE PLUS ARCHIVELOG;
このコマンドは、データベース全体とアーカイブログを無期限に保持します。
6. BACKUP KEEPバックアップの管理
6.1 保持されたバックアップの確認
BACKUP KEEPを使用して取得したバックアップは、LIST コマンドで確認できます。
LIST BACKUP SUMMARY;
6.2 保持バックアップの削除
不要になったKEEPバックアップを削除するには、DELETE FORCEを使用します。
DELETE FORCE BACKUPSET 123;
7. KEEP BACKUP の運用上の注意点
BACKUP KEEPを使用すると、通常のポリシーとは別にバックアップが管理されるため、ストレージの管理が重要です。- 長期間保持する場合は、適切なストレージ戦略を考慮し、不要なバックアップの削除を計画的に行うことが推奨されます。
KEEP FOREVERを使用する際は、ディスク容量が確保されていることを事前に確認してください。KEEPオプションでバックアップされたファイルはCROSSCHECKコマンドで管理できるため、定期的に整合性を確認しましょう。
8. まとめ
BACKUP KEEPを使用すると、特定のバックアップを長期間または無期限に保持可能KEEP UNTIL TIMEを指定すると、一定期間バックアップを維持できるKEEP FOREVERを使用すると無期限保持が可能だが、ストレージ管理に注意LIST BACKUP OF DATABASE KEEP;で保持バックアップを確認DELETE FORCE BACKUPSET KEEP;で手動削除可能
BACKUP KEEP を適切に活用し、重要なバックアップを安全に管理しましょう。
[参考]
Oracle Database バックアップおよびリカバリ・ユーザーズ・ガイド 19c
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?




コメント