9 保護されたデータベース・アクセスのためのリカバリ・アプライアンスの構成

この章の内容は次のとおりです。

保護されたデータベース・アクセスについて

この項には次のトピックが含まれます:

保護されたデータベース・アクセスの目的

データベース・バックアップにアクセスできるようになるまで、データベースはリカバリ・アプライアンスによって保護されていません。

保護されたデータベース・アクセスの概要

必要な構成を実行して保護されたデータベースがリカバリ・アプライアンスにバックアップを送信できるようにすることを、データベースの登録と呼びます。登録は、リカバリ・アプライアンスを使用するように保護されたデータベースを初めて設定するときに実行すべき、1回かぎりのタスクです。このタスクでは、リカバリ・アプライアンスと保護されたデータベースの両方での構成が必要となります。

基本的な登録ステップは、次のとおりです。

  1. データベースの追加

    データベースをリカバリ・アプライアンスに追加するプロセスでは、データベースのメタデータをリカバリ・アプライアンスのメタデータ・データベースに追加して、このデータベースを指定した保護ポリシーに割り当てます。DBMS_RA.ADD_DBを実行すると、保護されていないデータベースのステータスが「保護されたデータベース」になります。

  2. データベースへのアクセス権をリカバリ・アプライアンス・ユーザー・アカウントに付与

    メタデータ・データベースで仮想プライベート・カタログ・アカウント(リカバリ・アプライアンス・ユーザー)を作成した後、リカバリ・アプライアンスでDBMS_RA.GRANT_DB_ACCESS実行して、このアカウントを保護されたデータベースに関連付けます。

  3. データベースを仮想プライベート・カタログに登録

    保護されたデータベース・ホストでOracleウォレットを作成し、仮想プライベート・カタログ・アカウントの資格証明を追加します。RMAN REGISTER DATABASEコマンドを使用して、保護されたデータベースをリカバリ・カタログに登録します。

    ノート:

    リアルタイムREDOトランスポートを構成する場合は、保護されたデータベースでいくつかのSQL文を実行する必要があります(『Zero Data Loss Recovery Appliance保護されたデータベースの構成ガイド』を参照)。

図9-1に、保護されたデータベース(CONNECT TARGET)および仮想プライベート・カタログ(CONNECT CATALOG)に接続しているRMANクライアントを示します。バックアップ操作とリストア操作を可能にするには、保護されたデータベース・ホストのOracleウォレットに仮想プライベート・カタログ所有者が存在する必要があります。

図9-1 保護されたデータベース・アクセス

図9-1の説明が続きます。
「図9-1 保護されたデータベース・アクセス」の説明

ファイルをリカバリ・アプライアンスにバックアップしなくても、リカバリ・アプライアンス・カタログにデータベースのメタデータを保存できます。この場合、データベースのステータスは保護されたデータベースではないため、リカバリ・アプライアンスには登録されません。仮想プライベート・カタログ所有者がすでに存在し、作成する必要がないため、こうしたデータベースの将来の登録は簡単になります。

保護されたデータベース・アクセスを構成するためのユーザー・インタフェース

この項には次のトピックが含まれます:

Cloud Controlでの保護されたデータベース・ページへのアクセス

Oracle Enterprise Manager Cloud Control (Cloud Control)の保護されたデータベース・ページは、データベース登録プロセスを開始するための推奨インタフェースです。

保護されたデータベース・ページには、リカバリ・アプライアンスに直接バックアップされるか、またはダウンストリーム・リカバリ・アプライアンス・レプリケーション用に構成されるかにかかわらず、このリカバリ・アプライアンスで管理されるすべてのデータベースが一覧表示されます。このページでは、個々のデータベース、複数のデータベースまたは前に定義したEnterprise Managerグループを選択して、保護されたデータベースを追加できます。

保護されたデータベース・ページにアクセスするには:

  1. 「リカバリ・アプライアンスのホームページへのアクセス」の説明に従って、リカバリ・アプライアンスのホームページにアクセスします。

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

    図9-2に示すように、保護されたデータベース・ページが表示されます。

    図9-2 保護されたデータベース・ページ

    図9-2の説明が続きます。
    「図9-2 保護されたデータベース・ページ」の説明

関連項目:

保護されたデータベース・アクセスに関連するDBMS_RAプロシージャ

DBMS_RAパッケージを使用して、保護されたデータベース・アクセスを構成できます。表9-1で、保護されたデータベースに関連する主なプログラム・ユニットについて説明します。

表9-1 保護されたデータベース・アクセスのDBMS_RAプロシージャ

プログラム・ユニット 説明

ADD_DB

指定したデータベースのメタデータでをリカバリ・アプライアンスに追加して、保護ポリシーをデータベースに割り当てます。保護ポリシーでautotune_reserved_spaceが使用されていないかぎり、reserved_spaceパラメータを設定する必要があります。

DELETE_DB

指定したデータベースのメタデータをリカバリ・アプライアンスから削除します。このデータベースのすべてのメタデータとバックアップが、ディスクとSBTの両方から削除されます。

SUSPEND_DB

指定したデータベースのメタデータをリカバリ・アプライアンスから削除します。このデータベースのすべてのメタデータとバックアップが、ディスクとSBTの両方から削除されます。テープ上のバックアップ、クラウド内のバックアップ、または他のリカバリ・アプライアンスにレプリケートされたバックアップは影響を受けません。

データベースが一時停止されている場合、バックアップは受け入れられません。データベースを再開してから、通常の操作に戻る必要があります。

RESUME_DB

一時停止しているデータベースを通常の動作にリストアします。一時停止しているデータベースのみを再開できます。一時停止しているデータベースは、バックアップする前に再開する必要があります。

UPDATE_DB

指定の保護されたデータベースに割り当てられている属性を変更します。

GRANT_DB_ACCESS

指定したデータベースについて、リカバリ・アプライアンス権限をユーザーに付与します。

REVOKE_DB_ACCESS

指定したデータベースについて、リカバリ・アプライアンス権限をユーザーから取り消します。

保護されたデータベース・アクセスのリカバリ・カタログ・ビュー

リカバリ・アプライアンス・カタログ・ビューを使用して、データベース・アクセスをモニターできます。表9-2に、最も関係のあるビューについてまとめます。

表9-2 保護されたデータベース・アクセスのリカバリ・カタログ・ビュー

ビュー 説明

RA_DATABASE

このビューでは、このリカバリ・アプライアンスで保護されているデータベースについて説明します。

RA_DB_ACCESS

このビューでは、特定の保護されたデータベースにアクセスできるユーザー・アカウントについて説明します。

保護されたデータベース・アクセスを構成するための基本的なタスク

この項では、保護されたデータベース・アクセスを構成する場合の基本的なタスクについて説明します。図9-3は、「リカバリ・アプライアンスのワークフロー」に説明されている全体的なワークフローを、リカバリ・アプライアンスの構成タスクを強調して示したものです。

図9-3 リカバリ・アプライアンス・ワークフローでのデータベース・アクセス構成タスク

図9-3の説明が続きます。
「図9-3 リカバリ・アプライアンス・ワークフローでのデータベース・アクセス構成タスク」の説明

一般に、保護されたデータベース・アクセスは次の順序で構成します。

  1. 計画フェーズでは、リカバリ・アプライアンスで保護するデータベースを決定します。

    このタスクについては、タスク4: 「リカバリ・アプライアンスのアクセス要件の決定」に説明されています。

  2. 構成フェーズでは、次を行います(「リカバリ・アプライアンスの設定と構成」を参照)。

    1. 仮想プライベート・カタログ・アカウントを作成します。

      このタスクについては、「仮想プライベート・カタログ・アカウントの作成」に説明されています。

    2. 保護されたデータベースをリカバリ・アプライアンスに登録します。

      ノート:

      Cloud Controlでは、リカバリ・カタログでのデータベースの登録を除き、すべての登録ステップを単一のページで実行できます。

      このタスクについては、「保護されたデータベースの登録」に説明されています。

  3. 進行中のメンテナンス・フェーズでは(「リカバリ・アプライアンスのメンテナンス・タスク」を参照)、次を実行できます。

    • DBMS_RA.UPDATE_DBを使用して、既存の保護されたデータベースのプロパティを更新します(「保護されたデータベースのプロパティの更新」を参照)。

    • DBMS_RA.DELETE_DBを使用して、保護されたデータベースのメタデータをリカバリ・アプライアンスから削除します。

    • DBMS_RA.REVOKE_DB_ACCESSを使用して、特定の仮想プライベート・カタログ所有者から特定の保護されたデータベースへのアクセス権を取り消します。

仮想プライベート・カタログ・アカウントの作成

リカバリ・アプライアンスにバックアップする際は、RMANをリカバリ・アプライアンス・カタログに接続する必要があります。このステップでは、特定の保護されたデータベースまたは一連の保護されたデータベースの仮想プライベート・カタログ・ユーザーを作成します。

前提条件

次の要件を持つリカバリ・アプライアンス管理者であると想定します。

  • データベースorcldをリカバリ・アプライアンスに登録します。

  • ravpc1という名前の仮想プライベート・カタログ・アカウントを作成します。orcldをバックアップする際、ravpc1資格証明を使用してCONNECT CATALOG実行します。

仮想プライベート・カタログ・アカウントを作成するには:

  1. ユーザー・タイプadminを使用して、db_userという名前のリカバリ・アプライアンスにログインします。

  2. binディレクトリに変更します。

    # cd /opt/oracle.RecoveryAppliance/bin
  3. 新規の仮想プライベート・カタログ・アカウントを追加するコマンドを実行します。

    次のコマンドでは、ravpc1という名前の仮想プライベート・カタログ・アカウントが追加されます。

    # ./racli add db_user --user_name=ravpc1 --user_type=vpc

    プロンプトが表示されたら、ravpc1ユーザーのパスワードを入力します。

関連項目:

保護されたデータベースの登録

この項では、Cloud Control (推奨)またはDBMS_RAコマンドライン・インタフェースを使用して、保護されたデータベースを登録する方法について説明します。

関連項目:

リカバリ・アプライアンスにデータベースを登録する主な前提条件の詳細は、My Oracle SupportノートのドキュメントID 1995866.1 (http://support.oracle.com/epmos/faces/DocumentDisplay?id=1995866.1)を参照してください

Cloud Controlを使用して、保護されたデータベースをリカバリ・アプライアンスに登録するには、次の手順に従います。

  1. 「ターゲット」ドロップダウンを使用して、「データベース」項目を選択します。

    これにより、「データベース」の画面が開かれます。

  2. 「データベース」の表から、バックアップ保護およびリカバリ保護について構成するデータベースを選択します。そのデータベースの管理者としてログインする必要がある場合があります。

    これにより、データベースのパフォーマンスに関するグラフィカルな情報、および後続の「パフォーマンス」「可用性」「セキュリティ」「スキーマ」および「管理」のドロップダウンを含む画面がロードされます。

  3. 選択したデータベースの「可用性」ドロップダウンで、「バックアップとリカバリ」を強調表示し、そのフライアウトから「バックアップの構成」を選択します。

  4. 選択したデータベースの「バックアップの構成」画面で、「宛先」ドロップダウンからオプション「リカバリ・アプライアンス」を選択します。

    「ホスト資格証明」フィールドで、データベース・ホスト資格証明がある名前付きユーザーを検索します。

  5. 選択したデータベースの「バックアップの構成」の後続の画面内:

    • 「リカバリ・アプライアンス」ドロップダウンから、宛先リカバリ・アプライアンスを選択します。

    • 「仮想プライベート・カタログのユーザー」ドロップダウンから、適切なVPCユーザーを選択します。

    • データベースのその他のオプションを設定します。

      保護ポリシーで自動チューニングが有効になっている場合、予約済領域を指定する必要はありません。

    リカバリ・アプライアンスでTCPまたはTCPSのみがサポートされている場合、「プロトコル」は変更できません。リカバリ・アプライアンスがデュアル・モードの場合のみ、ドロップダウンにTCPおよびTCPSのオプションが表示されます。

    リアルタイムREDOの有効化スイッチは、データベースがData Guardデータベースではなく、アーカイブ・ログ・モードの場合にのみ許可されます。

    「ウォレット」フィールドには、ウォレットが存在する場合はそのパスが表示されます。その場合、このフィールドは無効になっています。ウォレットが存在しない場合は、場所を指定するか、ウォレットの推奨の場所を使用することができます。

    DB 23より前のOracle Databasesの場合、必要に応じて「バックアップ・モジュールのインストール」を選択できます。

  6. 選択したデータベースの「バックアップの構成」設定が終了したら、それらを送信します。

PL/SQLを使用して、保護されたデータベースをリカバリ・アプライアンスに登録するには、次の手順に従います。

DBMS_RAコマンドライン・インタフェースを使用してデータベースを登録する場合、次のタスクを実行する必要があります。

  1. DBMS_RAを使用して、保護データベースのメタデータをリカバリ・アプライアンスに追加します

  2. DBMS_RAを使用して、リカバリ・アプライアンス・アカウントにデータベース・アクセス権を付与します。

  3. 保護されたデータベースでのアクセス権の構成(『Zero Data Loss Recovery Appliance保護されたデータベースの構成ガイド』を参照)

データベースのメタデータの追加

保護するデータベースについて、DBMS_RA.ADD_DBを使用してこのデータベースのメタデータをリカバリ・アプライアンスに追加する必要があります。この手順では、既存の保護ポリシーおよびデータベースの予約済領域の量を指定する必要があります。

RASYSアカウントで、またはuser_type=adminに設定してdb_userという名前で、リカバリ・アプライアンスにログインする必要があります。

次の例では、次の要件を前提としています。

  • orcldを保護されたデータベースにします。

  • このデータベースを既存のbronze保護ポリシーに追加し、200GBの予約済領域を割り当てます。

  1. SQL*PlusまたはSQL Developerで、RASYSとしてリカバリ・アプライアンス・メタデータ・データベースに接続します。

  2. ADD_DBプロシージャを使用して、データベースのメタデータをリカバリ・アプライアンスに追加し、保護ポリシーを割り当てます。

    たとえば、次の無名ブロックはデータベースorcldを追加します。

    BEGIN
      DBMS_RA.ADD_DB (
        db_unique_name         => 'orcld',
        protection_policy_name => 'bronze',
        reserved_space         => '200G');
    END;
    
  3. オプションで、新たに追加されたデータベースに関する情報があるかリカバリ・カタログを問い合せます。

    たとえば、次の問合せを実行してorcld (出力例も示します)の詳細を表示します。

    COLUMN PROT_DB FORMAT a10
    COLUMN POLICY_NAME FORMAT a11
    SELECT DB_UNIQUE_NAME AS PROT_DB, DB_KEY, DBID, POLICY_NAME
    FROM   RA_DATABASE
    WHERE  DB_UNIQUE_NAME = 'ORCLD';
    
    PROT_DB        DB_KEY       DBID POLICY_NAME
    ---------- ---------- ---------- -----------
    ORCLD             301 3210984255 BRONZE

ノート:

Oracle Data Guard環境では、リカバリ・アプライアンス・カタログに登録したデータベース(プライマリまたはセカンダリ)のdb_unique_nameを追加します。

関連項目:

「ADD_DB」

アクセス権の付与

リカバリ・アプライアンス・ユーザー・アカウント(仮想プライベート・カタログ・アカウントでもあります)に必要な権限を付与して、このアカウントで認証する保護されたデータベースがバックアップ操作とリストア操作を実行できるようにする必要があります。DBMS_RA.GRANT_DB_ACCESSプロシージャは、保護されたデータベースを仮想プライベート・カタログに関連付けます。

  • RASYSアカウントで、またはuser_type=adminに設定してdb_userという名前で、リカバリ・アプライアンスにログインする必要があります。

  • DBMS_RA.GRANT_DB_ACCESSで指定したリカバリ・アプライアンス・ユーザー・アカウントが存在する必要があります。

  • orcldという名前の保護されたデータベースが追加されている必要があります。

この例では、保護されたデータベースorcldをバックアップする際に、RMANにravpc1としてのCONNECT CATALOGを許可するとします。

  1. SQL*PlusまたはSQL Developerで、RASYSとしてリカバリ・アプライアンス・データベースに接続します。

  2. GRANT_DB_ACCESSプロシージャを実行して、データベースに対するバックアップおよびリストア権限をユーザーに付与します。

    次のPL/SQL無名ブロックは、保護されたデータベースorcldへのアクセス権を仮想プライベート・カタログ・アカウントravpc1に付与します。

    BEGIN
       DBMS_RA.GRANT_DB_ACCESS (
         db_unique_name =>  'orcld',
         username       =>  'ravpc1');
    END;
    
  3. オプションで、データベース・アクセスに関する情報があるかリカバリ・カタログを問い合せます。

    たとえば、次の問合せを実行してorcldおよびカタログ所有者ravpc1 (出力例も示します)の詳細を表示します。

    COLUMN PROT_DB FORMAT a10
    COLUMN POLICY_NAME FORMAT a11
    COLUMN USERNAME FORMAT a15
    COLUMN DB_KEY FORMAT 999999
    SELECT d.DB_UNIQUE_NAME AS PROT_DB, d.DB_KEY, 
           d.DBID, d.POLICY_NAME, a.USERNAME
    FROM   RA_DATABASE d, RA_DB_ACCESS a 
    WHERE  d.DB_UNIQUE_NAME = 'ORCLD'
    AND    a.DB_KEY = d.DB_KEY;
     
    PROT_DB     DB_KEY       DBID POLICY_NAME USERNAME
    ---------- ------- ---------- ----------- ---------------
    ORCLD          301 3210984255 BRONZE      RAVPC1
    
  4. このアカウントを使用して認証する必要のある保護されたデータベースごとに、仮想プライベート・カタログのユーザー名とパスワードをDBAに送信します。

  5. 登録手順を完了するには、『Zero Data Loss Recovery Appliance保護されたデータベースの構成ガイド』を参照してください。

関連項目:

「GRANT_DB_ACCESS」

保護されたデータベースのプロパティの更新

この項では、Cloud Control (推奨)またはDBMS_RAコマンドライン・インタフェースを使用して、保護されたデータベースのプロパティを更新する方法について説明します。

Cloud Controlを使用して、保護されたデータベースのプロパティを更新するには、次の手順に従います。

次のビジネス要件があると想定します。

  • 保護されたデータベースORCL11の保護ポリシーをGOLDからBRONZEに変更します。

  • 予約済領域を6355GBから7000GBに変更します。

  • この保護されたデータベースに関連付けられているリカバリ・アプライアンス・ユーザー・アカウントをrauser11からrauser12に変更します。

  1. 「Cloud Controlでの保護されたデータベース・ページへのアクセス」に説明されているとおりに、保護されたデータベース・ページにアクセスします。

  2. 「編集」をクリックします。

    保護されたデータベースの編集ページが表示されます。

  3. 保護されたデータベースの必要な属性を変更して、「OK」をクリックします。

    • 「保護ポリシー」セクションで、BRONZEというポリシーの行を選択します。

      たとえば、「すべて」を選択します。

    • 「予約済領域」フィールドに、この保護されたデータベースに予約するディスク領域の新しい最小量を入力します。

      たとえば、7000と入力して、単位にGBを選択します。

    • 「リカバリ・アプライアンス・ユーザー」セクションに、データベース・ユーザーrauser12の資格証明を入力します。

    新しく更新したデータベースが、保護されたデータベースの表に表示されます。

DBMS_RAを使用して、保護されたデータベースのプロパティを更新するには、次の手順に従います。

次のビジネス要件があると想定します。

  • 保護されたデータベースzdlracの保護ポリシーをsilverからbronzeに変更する必要があります。

  1. SQL*PlusまたはSQL Developerを起動してから、RASYSとして、またはuser_type=adminに設定してdb_userという名前で、メタデータ・データベースにログインします。

  2. 既存の保護ポリシーを問い合せます。

    たとえば、次の問合せを実行します(出力例も示します)。

    COL POLICY_NAME FORMAT a11
    COL DESCRIPTION FORMAT a35
    SELECT POLICY_NAME, DESCRIPTION, 
           TO_CHAR(EXTRACT(DAY FROM RECOVERY_WINDOW_GOAL),'fm00')||':'||
           TO_CHAR(EXTRACT(HOUR FROM RECOVERY_WINDOW_GOAL),'fm00')||':'||
           TO_CHAR(EXTRACT(MINUTE FROM RECOVERY_WINDOW_GOAL),'fm00')||':'||
           TO_CHAR(EXTRACT(SECOND FROM RECOVERY_WINDOW_GOAL),'fm00')
             AS "DD:HH:MM:SS"
    FROM   RA_PROTECTION_POLICY;
     
    POLICY_NAME DESCRIPTION                         DD:HH:MM:SS
    ----------- ----------------------------------- ---------------
    BRONZE      For protected dbs in bronze tier    01:00:00:00
    SILVER      For protected dbs in silver tier    07:00:00:00
    GOLD        For protected dbs in gold tier      14:00:00:00
    
  3. どの保護されたデータベースがどの保護ポリシーに関連付けられているかを特定します。

    たとえば、次の問合せを実行します(出力例も示します)。

    SELECT d.DB_UNIQUE_NAME, d.POLICY_NAME
    FROM   RA_PROTECTION_POLICY p, RA_DATABASE d
    WHERE  p.policy_name=d.policy_name
    ORDER BY d.DB_UNIQUE_NAME;
     
    DB_UNIQUE_NAME                   POLICY_NAME
    -------------------------------- -----------
    ZDLRA                            BRONZE
    ZDLRAC                           SILVER
    .
    .
    .
    
  4. DBMS_RA.UPDATE_DBプロシージャを実行して、データベースを新しいポリシーに関連付けます。

    たとえば、次のPL/SQL無名ブロックを実行して、現在のポリシーがsilverzdlracという名前のデータベースを、bronzeという名前の保護ポリシーに関連付けます。

    BEGIN
     DBMS_RA.UPDATE_DB(
       db_unique_name             => 'zdlrac',
       protection_policy_name     => 'bronze');
    END;
    
  5. オプションで、データベースが正しいポリシーに関連付けられていることを確認します。

    たとえば、次の問合せを実行します(出力例も示します)。

    SELECT d.DB_UNIQUE_NAME, d.POLICY_NAME
    FROM   RA_PROTECTION_POLICY p, RA_DATABASE d
    WHERE  p.POLICY_NAME=d.POLICY_NAME
    ORDER BY d.DB_UNIQUE_NAME;
     
    DB_UNIQUE_NAME                   POLICY_NAME
    -------------------------------- -----------
    ZDLRA                            BRONZE
    ZDLRAC                           BRONZE
    .
    .
    .

関連項目:

「UPDATE_DB」