アーカイブ・バックアップの管理

アーカイブ・バックアップを作成および保持するための主な2つの方法は、Enterprise Manager Cloud Controlなどのアプリケーションを使用するか、DBMS_RA APIを使用します。

Enterprise Manager Cloud Controlを使用してアーカイブ・バックアップにアクセスおよび作成するステップは、次のとおりです:

  1. Cloud Controlページにログインします。

    関連項目:

    詳細は、「リカバリ・アプライアンス・ホームページへのアクセス」を参照してください。

  2. Cloud Controlの任意のページで、「ターゲット」ドロップダウン・メニューを使用して、「リカバリ・アプライアンス」を選択します。

    リカバリ・アプライアンス・ページが表示されます。

  3. 「名前」列のリカバリ・アプライアンスの名前をクリックします。

    選択したリカバリ・アプライアンスのホームページが表示されます。

    このページで、リカバリ・アプライアンス全体のスナップショットを確認できます。また、リンクをクリックして特定の内容の詳細を参照できます。

  4. メディア・マネージャは、リカバリ・アプライアンスによってバックアップがメディアにコピーされるときにメディア管理ソフトウェア(Oracle Secure Backupなど)に渡されるパラメータを定義するため、アーカイブ・バックアップに対して存在または作成する必要があります。

    「リカバリ・アプライアンス」ドロップダウン・メニューから「メディア・マネージャ」を選択します。

    「メディア・マネージャ」ページには、「メディア・マネージャ・ライブラリ」表と「属性セット」表があります。メディア・マネージャを作成または編集するときは、ライブラリの「名前」、メディアライブラリがアクセスできる「最大チャネル」、リストア操作用に予約されている「チャネルのリストア」「メディア管理ベンダーのパラメータ」、および「メディア管理ベンダーのコマンド」を指定します。

  5. 使用するアーカイブ・バックアップに適切なメディア・マネージャが存在することを確認します。

  6. 「リカバリ・アプライアンス」ドロップダウン・メニューから、「保護されたデータベース」を選択します。

    これにより、リカバリ・アプライアンスが現在保護しているすべてのデータベースを含む表が表示されます。

  7. アーカイブ・バックアップが必要なデータベースの「保護されたデータベース」表の行を選択します。強調表示されている状態で、表の上にあるアーカイブ・バックアップ・ボタンを選択します。

    これにより、アーカイブ・バックアップ・ページが開き、「リストア・ポイント名」「ステータス」「SCN」リストア・タグ「保有時間」および「作成済」の情報を含むバックアップの表が表示されます。

  8. アーカイブ・バックアップで、アーカイブ・バックアップの作成ボタンをクリックします。

    これにより、アーカイブ・バックアップの作成ダイアログが開き、次のオプションが表示されます:

    • 定期的なスケジュールでのバックアップ: 1か月以上の特定の日時。

    • 1回かぎりのアーカイブ・バックアップ: アーカイブ・バックアップの「時点」「SCN」および「リストア・ポイント」のタイプの場合、および「時点」および「リストア・ポイント名」のフィールドの場合。

    どちらのオプションでも、「保有時間」セクションには、「保持期間」や期間など、アーカイブの他の重要な設定のドロップダウン・コントロールと、「属性セット」(特定のメディア・マネージャ)、「フォーマット」「暗号化アルゴリズム」「圧縮アルゴリズム」などのアーカイブの「プロパティ」があります。

    ノート:

    アーカイブ・バックアップのテープまたはクラウドの保存先は、メディア・マネージャを使用して指定します。

CREATE_ARCHIVAL_BACKUPプロシージャは、アーカイブ・バックアップを作成します。

アーカイブ・バックアップは、保護ポリシーのKEEP_COMPLIANCE属性によって制御されます。この属性(YESの場合)によって、KEEPバックアップでデータベース管理者がKEEP UNTIL時間を調整できないようにします。(KEEP UNTIL時間の短縮は非準拠で、バックアップを早期に期限切れにして削除し、その記憶域を再利用するための方法です。)KEEP_COMPLIANCEの場合、バックアップは指定された日付まで記憶域に保持され、その後はその記憶域が再利用されます。

次のPL/SQLスニペットでは、データベースDB_UNIQUE_NAMEについて、特定のリストア期間と有効期限(KEEP_UNTIL_TIME)を指定して単一のアーカイブ・バックアップが作成されます。

DBMS_RA.CREATE_ARCHIVAL_BACKUP(
db_unique_name => DB_UNIQUE_NAME,
from_tag => NULL,
compression_algorithm => 'LOW',
encryption_algorithm => NULL,
restore_point => NULL,
restore_until_scn => NULL,
restore_until_time => TO_TIMESTAMP(last_day(sysdate-1)||' 11:59:59 PM'),
attribute_set_name => 'SEVEN_YEAR_VAULT_DRIVE',
format => NULL,
autobackup_prefix => NULL,
restore_tag => NULL,
keep_until_time => TO_TIMESTAMP(ADD_MONTHS(last_day(sysdate-1), 84)||' 11:59:59 PM'),
comments => NULL
max_redo_to_apply => 21);

前述のスニペットは、ループの本体になることができます。アーカイブ・バックアップを作成するための次のスニペットでは、2つのSELECTインスタンスで、特定の保護ポリシーがあるデータベースが識別されてから、アーカイブするリストア・バックアップがあるデータベースがフィルタされます。選択セット内の各データベースのR1.DB_UNIQUE_NAMEに、アーカイブ・バックアップが作成されています。

BEGIN
FOR R1 IN 
(
WITH BACKUP_RANGE AS
(select  B.DB_UNIQUE_NAME,B.NZDL_ACTIVE,A.DB_KEY,B.policy_name,A.LOW_TIME,A.HIGH_TIME,
CASE WHEN TO_DATE('2022-10-31','YYYY-MM-DD') between low_time and high_time THEN 'PASSED' ELSE 'NO_RANGE' END as DISK_RANGE_STATUS,
to_char((SYSTIMESTAMP AT TIME ZONE TO_CHAR(B.timezone)) - B.minimum_recovery_needed, 'DD-MON-YY HH:MI:SS AM')  LAST_BACKUP_TIME
from 
RA_DISK_RESTORE_RANGE A, ra_database B
WHERE b.db_key = a.db_key
AND (B.policy_name like 'GOLD' or B.policy_name like 'SILVER')
ORDER BY B.DB_UNIQUE_NAME,HIGH_TIME DESC)
SELECT DB_UNIQUE_NAME,NZDL_ACTIVE,DB_KEY,POLICY_NAME,LOW_TIME,HIGH_TIME,DISK_RANGE_STATUS,LAST_BACKUP_TIME
from BACKUP_RANGE 
WHERE DISK_RANGE_STATUS='PASSED' AND NZDL_ACTIVE='YES'
ORDER BY DB_UNIQUE_NAME
)
LOOP
dbms_output.put_line('Submitting Archival Backup for:'||R1.DB_UNIQUE_NAME||'LAST_BACKUP_TIME:='||R1.LAST_BACKUP_TIME);

DBMS_RA.CREATE_ARCHIVAL_BACKUP(
db_unique_name => R1.DB_UNIQUE_NAME,
from_tag => NULL,
compression_algorithm => 'LOW',
encryption_algorithm => NULL,
restore_point => NULL,
restore_until_scn => NULL,
restore_until_time => TO_TIMESTAMP(last_day(sysdate-1)||' 11:59:59 PM'),
attribute_set_name => 'SEVEN_YEAR_VAULT_DRIVE',
format => NULL,
autobackup_prefix => NULL,
restore_tag => NULL,
keep_until_time => TO_TIMESTAMP(ADD_MONTHS(last_day(sysdate-1), 84)||' 11:59:59 PM'),
comments => NULL
max_redo_to_apply => 21);

dbms_output.put_line('=========================================');
END LOOP; 
END;
/

表13-1 テープ/クラウド/アーカイブ・バックアップ操作に関連付けられているDBMS_RAプロシージャ

SBTオブジェクト プロシージャ

SBTジョブ

SBTライブラリ

SBT属性セット

保護ポリシー

バックアップ