はじめに
Oracle Databaseのバックアップを管理する上で、RMAN(Recovery Manager)の保存ポリシーは非常に重要です。適切な保存ポリシーを設定することで、データの復旧を確実にしつつ、ストレージリソースの無駄を削減できます。本記事では、RMANの保存ポリシーの概要、設定方法、実践的な運用例を詳しく解説します。
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?
RMANの保存ポリシーとは?
RMANの保存ポリシー(Retention Policy)とは、バックアップの保持期間や世代を管理するためのルールです。これにより、不要なバックアップの削除が自動化され、ストレージの最適化が実現できます。保存ポリシーを適切に設定しないと、古いバックアップが蓄積しストレージを圧迫する一方、厳しすぎる設定では必要なデータが失われるリスクがあります。
保存ポリシーの種類
RMANの保存ポリシーには、以下の2種類があります。
1. リカバリウィンドウベースのポリシー(RECOVERY WINDOW)
- 指定した日数分のバックアップを保持し、それ以前のバックアップを削除します。
- 例:過去7日間のリカバリが可能なようにバックアップを保持する。
- 長期間のデータ復旧が必要な場合に有効。
設定方法
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
この設定では、最新の7日間のリカバリが可能なようにバックアップが保持されます。
2. 冗長性ベースのポリシー(REDUNDANCY)
- 指定した世代数のバックアップを保持し、それを超えた古いバックアップを削除します。
- 例:最新の2世代分のバックアップを保持する。
- シンプルな管理が可能で、最新のバックアップを常に確保したい場合に適している。
設定方法
RMAN> CONFIGURE RETENTION POLICY TO REDUNDANCY 2;
この設定では、最新の2世代分のバックアップが保持されます。
保存ポリシーの無効化
保存ポリシーを無効にする場合は、以下のように設定します。
RMAN> CONFIGURE RETENTION POLICY TO NONE;
この設定により、RMANは古いバックアップを自動削除せず、手動で管理する必要があります。
保存ポリシーに基づいたバックアップの削除
設定された保存ポリシーに基づき、不要なバックアップを削除するには、以下のコマンドを使用します。
RMAN> DELETE OBSOLETE;
このコマンドを実行すると、設定された保存ポリシーに従い、不要なバックアップが削除されます。定期的にこのコマンドを実行することで、ストレージの使用量を適切に管理できます。
[oracle@v19single ~]$ rman target /
Recovery Manager: Release 19.0.0.0.0 - Production on 日 2月 2 23:59:05 2025
Version 19.21.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
ターゲット・データベース: V19 (DBID=2957249400)に接続されました
RMAN> delete obsolete; ★保存ポリシーを参照し、不要なファイルを自動で削除
リカバリ・カタログのかわりにターゲット・データベース制御ファイルを使用しています
Recovery Manager保存ポリシーがコマンドに適用されます。
Recovery Manager保存ポリシーが冗長性1に設定されます。
チャネル: ORA_DISK_1が割り当てられました
チャネルORA_DISK_1: SID=95 デバイス・タイプ=DISK
次の不要なバックアップおよびコピーが削除されます:
Type Key Completion Time Filename/Handle
-------------------- ------ ------------------ --------------------
アーカイブ・ログ 1 25-02-02 /u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_12_msz10jwr_.arc
アーカイブ・ログ 2 25-02-02 /u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_13_msz10mhy_.arc
アーカイブ・ログ 3 25-02-02 /u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_14_msz10q84_.arc
アーカイブ・ログ 4 25-02-02 /u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_15_msz11kr0_.arc
バックアップ・セット 1 25-02-02
バックアップ・ピース 1 25-02-02 /u01/app/oracle/fast_recovery_area/V19/backupset/2025_02_02/o1_mf_annnn_TAG20250202T234154_msz11lmk_.bkp
バックアップ・セット 2 25-02-02
バックアップ・ピース 2 25-02-02 /u01/app/oracle/fast_recovery_area/V19/backupset/2025_02_02/o1_mf_nnndf_TAG20250202T234155_msz11myr_.bkp
アーカイブ・ログ 5 25-02-02 /u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_16_msz12f2l_.arc
バックアップ・セット 3 25-02-02
バックアップ・ピース 3 25-02-02 /u01/app/oracle/fast_recovery_area/V19/backupset/2025_02_02/o1_mf_annnn_TAG20250202T234221_msz12f8m_.bkp
バックアップ・セット 4 25-02-02
バックアップ・ピース 4 25-02-02 /u01/app/oracle/fast_recovery_area/V19/autobackup/2025_02_02/o1_mf_s_1192059742_msz12glj_.bkp
アーカイブ・ログ 6 25-02-02 /u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_17_msz12tg4_.arc
バックアップ・セット 5 25-02-02
バックアップ・ピース 5 25-02-02 /u01/app/oracle/fast_recovery_area/V19/backupset/2025_02_02/o1_mf_annnn_TAG20250202T234234_msz12tnr_.bkp
このオブジェクトを削除しますか(YESまたはNOを入力してください)。 yes
アーカイブ・ログを削除しました
アーカイブ・ログ・ファイル名=/u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_12_msz10jwr_.arc レコードID=1 スタンプ=1192059681
アーカイブ・ログを削除しました
アーカイブ・ログ・ファイル名=/u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_13_msz10mhy_.arc レコードID=2 スタンプ=1192059683
アーカイブ・ログを削除しました
アーカイブ・ログ・ファイル名=/u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_14_msz10q84_.arc レコードID=3 スタンプ=1192059687
アーカイブ・ログを削除しました
アーカイブ・ログ・ファイル名=/u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_15_msz11kr0_.arc レコードID=4 スタンプ=1192059713
バックアップ・ピースが削除されました
バックアップ・ピース・ハンドル=/u01/app/oracle/fast_recovery_area/V19/backupset/2025_02_02/o1_mf_annnn_TAG20250202T234154_msz11lmk_.bkp レコードID=1 スタンプ=1192059714
バックアップ・ピースが削除されました
バックアップ・ピース・ハンドル=/u01/app/oracle/fast_recovery_area/V19/backupset/2025_02_02/o1_mf_nnndf_TAG20250202T234155_msz11myr_.bkp レコードID=2 スタンプ=1192059715
アーカイブ・ログを削除しました
アーカイブ・ログ・ファイル名=/u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_16_msz12f2l_.arc レコードID=5 スタンプ=1192059741
バックアップ・ピースが削除されました
バックアップ・ピース・ハンドル=/u01/app/oracle/fast_recovery_area/V19/backupset/2025_02_02/o1_mf_annnn_TAG20250202T234221_msz12f8m_.bkp レコードID=3 スタンプ=1192059741
バックアップ・ピースが削除されました
バックアップ・ピース・ハンドル=/u01/app/oracle/fast_recovery_area/V19/autobackup/2025_02_02/o1_mf_s_1192059742_msz12glj_.bkp レコードID=4 スタンプ=1192059742
アーカイブ・ログを削除しました
アーカイブ・ログ・ファイル名=/u01/app/oracle/fast_recovery_area/V19/archivelog/2025_02_02/o1_mf_1_17_msz12tg4_.arc レコードID=6 スタンプ=1192059754
バックアップ・ピースが削除されました
バックアップ・ピース・ハンドル=/u01/app/oracle/fast_recovery_area/V19/backupset/2025_02_02/o1_mf_annnn_TAG20250202T234234_msz12tnr_.bkp レコードID=5 スタンプ=1192059754
11オブジェクトを削除しました
RMAN>
保存ポリシーの確認
現在の保存ポリシーを確認するには、以下のコマンドを使用します。
RMAN> SHOW RETENTION POLICY;
これにより、現在の設定内容が表示されます。
RMAN> show retention policy;
db_unique_name V19のデータベースにおけるRMAN構成パラメータ:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
実践的な運用例
ケース1:金融業界などの厳格なデータ管理が必要な場合
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 30 DAYS;- 1か月分のバックアップを保持し、長期間のデータ復旧を可能にする。
- 毎週
DELETE OBSOLETE;を実行し、不要なバックアップを整理。
ケース2:一般企業のシステムバックアップ
CONFIGURE RETENTION POLICY TO REDUNDANCY 3;- 直近3世代のバックアップを保持し、シンプルな管理を実現。
DELETE OBSOLETE;をスケジュールジョブで定期的に実行。
まとめ
- RMANの保存ポリシーは「リカバリウィンドウ」と「冗長性」の2種類がある。
CONFIGURE RETENTION POLICYコマンドで簡単に設定できる。DELETE OBSOLETEコマンドで不要なバックアップを削除し、ストレージを最適化できる。SHOW RETENTION POLICYで現在の設定状況を確認可能。- 目的に応じて適切な保存ポリシーを設定し、定期的なメンテナンスを行うことで効率的なバックアップ管理が可能。
適切な保存ポリシーを設定し、データ保護とストレージ最適化を両立させましょう!
[参考]
Oracle Database バックアップおよびリカバリ・ユーザーズ・ガイド 19c
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?




コメント