アプライアンス管理コンソールで Oracle データベースの Backup and DR ワークフローを作成する

Backup and DR ワークフローは、App Manager で定義されます。Backup and DR ワークフローは、バックアップ本番環境データをソースデータとして使用して生成します。

  • 直接マウント: 直接マウントは、アプリケーション データをマウントしてユーザーが利用できるようにする前に、アプリケーション データをスクラブする必要がない場合に使用されます。アプリケーション データは、標準マウントを使用して、データのみ、仮想アプリケーション、またはデータと仮想アプリケーションの両方としてマウントできます。直接マウントを使用すると、データを実際に移動することなく、バックアップ データをほぼ即座に利用できます。
  • LiveClones: LiveClone は通常、アプリケーションにセンシティブ データが含まれており、マウントしてユーザーに提供する前にスクラブする必要がある場合に、Backup and DR ワークフローで使用されます。アプリケーション データは、標準マウントを使用して、データのみ、仮想アプリケーション、またはデータと仮想アプリケーションの両方としてマウントできます。LiveClone の更新、スクラブ、マウントは、スケジュールに基づいて自動的に行うことも、オンデマンドで行うこともできます。

Oracle データを仮想アプリケーションとして直接マウントする

直接マウントの Backup and DR ワークフローは、アプリケーション バックアップにセンシティブ データが含まれていない場合に使用されます。これにより、Backup and DR ワークフローは、最初に LiveClone を定義して LiveClone をスクラブすることなく、アプリケーションのデータを仮想アプリケーションとして、またはアプリケーション データのみとしてマウントできます。直接マウントを使用すると、アプリケーション データと仮想アプリケーションをほぼ瞬時に利用できるようになります。

この例では、次の処理を行う Backup and DR ワークフローを定義します。

  • 選択した 1 つの本番環境バックアップから、マウントされたアプリケーション データを生成または更新します。
  • 最新の本番環境データでアプリケーション データを更新するスケジュールを定義します。スケジュールされた Backup and DR ワークフローは、オンデマンドで実行することもできます。
  • アプリケーション データをマウントします。
  • データを使用して仮想アプリケーションを作成できます。

Oracle データベースの Backup and DR ワークフローを定義する手順は次のとおりです。

  1. Backup and DR アプライアンス管理コンソールで、[App Manager] > [Workflows] をクリックします。

  2. ページの右上にある [Workflow] をクリックします。

    [Add Workflow: Select an Application] ページが開きます。

  3. マネージド データベースを右クリックして [Next] をクリックします。

  4. [Add Workflow: Configure] ページで、Backup and DR ワークフローの名前を指定し、[Direct Mount] を選択して、Backup and DR ワークフローを管理するアプライアンスを選択します。Backup and DR ワークフロー名に特殊文字は使用できません。

  5. [スケジュール タイプ] で [スケジュール設定済み] を選択し、Backup and DR ワークフローを実行する頻度を割り当てます。タイムセレクタは 24 時間形式です。スケジュールされた Backup and DR ワークフローは、オンデマンドで実行することもできます。

  6. [Direct Mount Settings] の [Source Image] で、Backup and DR ワークフローを実行するスナップショットを選択し、マウントに識別可能なラベルを割り当てます。

  7. [Hosts] セクションで、データをマウントするサーバーを選択します。Backup and DR ワークフローを実行するユーザーは、必要に応じてデータを他のサーバーにマウントすることもできます。

  8. [Mapping Options] でマウント ポイントを追加します。マウントを指定しない場合、Backup and DR エージェントがマウント場所を選択します。

  9. 必要に応じて、[Preferred diskgroup name] にディスク グループ名を入力します。

  10. 必要に応じて、[RAC node list] に RAC ノードの IP アドレスをコロンで区切って入力します。

  11. 必要に応じて、[Pre Script] で事前スクリプトを指定します。事前スクリプトは、アプリケーションのマウントやマウント解除の前に環境を構成するために使用されます。このスクリプトは、マウントされたバックアップをホストするサーバーの /act/scripts というフォルダに置かれている必要があります。スクリプトの詳細については、Backup and DR ワークフローの事前スクリプトと事後スクリプトをご覧ください。

  12. 必要に応じて、[Post Script] で事後スクリプトを指定します。事後スクリプトは、マウントやマウント解除の後にデータを操作するために使用されます。このスクリプトは、マウントされたバックアップをホストするサーバーの /act/scripts というフォルダに置かれている必要があります。スクリプトの詳細については、Backup and DR ワークフローの事前スクリプトと事後スクリプトをご覧ください。

  13. スクリプトを指定した場合は、それらのスクリプトが完了するのに十分な長さのタイムアウトを指定します。

  14. [Remove mounted backup after processing.] チェックボックスは、マウントされたデータをスクリプトで処理する場合にオンにするのが一般的です。このオプションをオンにすると、スクリプトのタスクの終了後に仮想アプリケーションがマウント解除されて削除されます。

  15. 次のいずれかのオプションを選択します。

    • データのみが必要な場合は、[完了] をクリックすると、Backup and DR ワークフローがスケジュールどおりに実行されます。適切なアクセス権を持つユーザーは、アプリケーション データを使用して環境をプロビジョニングおよび再プロビジョニングするために、この Backup and DR ワークフローをオンデマンドで実行することもできます。
    • 仮想アプリケーションを作成する場合は、次の手順に進みます。
  16. [Perform application aware mount] チェックボックスをオンにします。アプリケーション対応マウントを実行するためのアプリケーション固有のオプションが表示されます。

  17. 用意されたスペースに Oracle 関連のオプションを入力します。疑問符 ? をクリックします。をクリックすると、ヘルプテキストが表示されます。

  18. 黒い矢印をクリックして [Advanced Options] を開き、必要に応じて残りのオプションを完了します。

  19. [Restore with Recovery] を選択します。これにより、ログが利用可能な場合にそれらのログを適用して、データベースを特定の時点の状態に復元できるようになります。

  20. この時点で、次のタスクを完了できます。

    • [Protect new application] オプションをオンにします。これにより、バックアップ プラン ポリシー テンプレートとリソース プロファイルを適用して、仮想アプリケーションを新しいアプリケーションとして保護できます。詳細については、バックアップ プラン ポリシー テンプレートとプロファイルをご覧ください。
    • [Done] をクリックします。Backup and DR ワークフローがスケジュールどおりに実行されます。適切なアクセス権を持つユーザーは、仮想アプリケーションを使用して環境をプロビジョニングおよび再プロビジョニングするために、この Backup and DR ワークフローをオンデマンドで実行することもできます。

LiveClone とマスクツールを使用して、スクラブされたデータまたは仮想アプリケーションを作成する

LiveClone のバックアップと DR のワークフローは、通常、本番環境データに機密情報が含まれている場合に使用されます。LiveClone の Backup and DR ワークフローを使用すると、本番環境データから LiveClone を定義し、マウントする前に LiveClone のデータをスクラブできます。

次の例では、Backup and DR ワークフローで次のことができます。

  • 機密としてマークされている選択した本番環境バックアップから、新しい LiveClone を生成するか、既存の LiveClone を更新します。
  • 最新の本番環境データで LiveClone を更新するスケジュールを定義します。スケジュールされた Backup and DR ワークフローは、オンデマンドで実行することもできます。
  • スクリプトを使用して、LiveClone のセンシティブ データをスクラブします。
  • スクラブされた仮想アプリケーションを機密情報以外としてマークします。
  • スクラブされたバックアップを仮想アプリケーション(アプリケーション認識マウント)として指定されたホストにマウントします。

この Backup and DR ワークフローを定義するには、次の手順を行います。

  1. アプライアンス管理コンソールで [App Manager] > [Workflows] を開きます。
  2. 右上にある [Add Workflow] をクリックします。
  3. [Add Workflow: Select an Application] ページで、センシティブ データをスクラブするアプリケーションを右クリックして [Next] を選択します。

    [Add Workflow: Configure] ページが開きます。

  4. Backup and DR ワークフローの名前を指定します。Backup and DR ワークフロー名に特殊文字は使用できません。

  5. [Workflow Type] で [LiveClone] を選択します。

    [LiveClone Settings] が開きます。

  6. [Schedule Type] で [Scheduled] または [On Demand] を選択します。スケジュールされた Backup and DR ワークフローは、オンデマンドで実行することもできます。

  7. [Scheduled] を選択した場合は、Backup and DR ワークフローを実行するスケジュールを定義します。

    タイムセレクタは 24 時間形式です。

  8. [Source Image] で、スクラブするバックアップを生成するポリシーの最新のスナップショットを選択します。

  9. LiveClone に識別可能なラベルを割り当てます。

  10. LiveClone が存在するスナップショット プールを選択します。この LiveClone を保存するのに十分な容量が割り当てられているスナップショット プールを選択してください。

    [Mount for pre-processing] を有効にします。次の画面で、LiveClone をホストにマウントしてセンシティブ データをスクラブできます。

  11. [Mark Data Non-Sensitive] オプションは、センシティブ データが含まれているものとしてマークされているアプリケーションを選択した場合にのみ表示されます。スクラブ後のアプリケーションにセンシティブ データが含まれない場合はこのオプションをオンにします。これにより、センシティブ データにアクセスできないユーザーが、Backup and DR ワークフローにアクセスして作業環境をプロビジョニングできるようになります。

  12. LiveClone をマウントするホストを選択します。

  13. デフォルト以外の場所にバックアップをマウントする場合は、[Mapping Options] の [Mount Location] でマウント ポイントを追加します。マウント ロケーションを指定しない場合、Backup and DR エージェントがマウント ロケーションを割り当てます。

  14. 必要に応じて、[Preferred diskgroup name] にディスク グループ名を入力します。

  15. 必要に応じて、[RAC node list] に RAC ノードの IP アドレスをコロンで区切って入力します。

  16. Optim データ プライバシー マスキングを使用することも、独自のカスタム スクリプトを使用することもできます。

    • Optim データ プライバシー マスキングを使用する場合は、サービスセットとタイムアウト値を分単位で入力します。
    • カスタム スクリプトを使用する場合は、必要に応じて [Pre Script] で事前スクリプトを指定します。事前スクリプトは、アプリケーションのマウントやマウント解除の前に環境を構成するために使用されます。必要に応じて、[Post Script] で事後スクリプトを指定します。この例の事後スクリプトは、マウントされたアプリケーションからセンシティブな情報をスクラブします。それらのスクリプトが完了するのに十分な長さのタイムアウトを指定します。
  17. 仮想アプリケーションが必要ない場合は、[Add] をクリックします。Backup and DR ワークフローがスケジュールどおりに実行されます。適切なアクセス権を持つユーザーは、この Backup and DR ワークフローをオンデマンドで実行して、アクセス権がある任意のサーバーをアプリケーション データでプロビジョニングおよび再プロビジョニングできます。

    この LiveClone の仮想アプリケーションが必要な場合は、ここで続行します。

  18. [Create New Virtual Application] を有効にして [Next] をクリックします。[Additional Oracle Settings] のオプションが表示されます。

  19. Backup and DR で保護する場合は [Manage New Application] を有効にします。このオプションを選択した場合は、適用するポリシー テンプレートとリソース プロファイルを選択する必要があります。

  20. 矢印をクリックして [Advanced Options] を開きます。[Restore with Recovery] を選択して、利用可能なログを適用し、データベースを特定の時点の状態に復元します。

  21. このデータベースのその他の Oracle 設定を必要に応じて指定します。各ラベルをクリックするとヘルプが表示されます。

  22. 最後に、[Remove mounted backup after done] チェックボックスをオンにします。通常は、マウントされたデータをスクリプトで処理する場合に選択します。スクリプトのタスクが終了すると、このオプションはマウント解除され、仮想アプリケーションを削除できます。

  23. [追加] をクリックします。

Backup and DR ワークフローを使用して Oracle データベース スキーマを更新する

Oracle 12c 以降を使用している場合は、Oracle 12c データベース PDB を仮想 PDB としてターゲット上の既存のデータベース コンテナに提示するをご覧ください。

複数のアプリケーションを含むソース データベース インスタンスがあり、各アプリケーションに独自のスキーマがある場合は、次の操作を行います。

  • スキーマレベルで仮想コピーを作成して更新し、各スキーマを同じターゲットまたは別のターゲットに個別に更新します。
  • 1 つのスキーマの複数の仮想コピーを作成し、異なるスキーマの下にある 1 つのターゲットに更新します。各コピーには独自の更新スケジュールがあります。

このセクションは次の要素で構成されています。

仕組み: Backup and DR のトランスポータブル表領域を使用した仮想コピー

同じソース インスタンスまたは複数のソース インスタンスから、1 つのターゲット Oracle インスタンスに複数の仮想コピーを作成して更新できます。

  1. アプリケーション対応マウントの Backup and DR ワークフローを設定して、一時インスタンスでアプリケーション対応マウントを作成します。
  2. ターゲット インスタンスで実行する事前スクリプトを設定します。オフラインにして、ターゲット インスタンスで更新する表領域を削除します。
  3. 一時インスタンスとターゲット インスタンスで実行される事後スクリプトを設定します。
  4. 一時インスタンスで、次の操作を行います。
    1. 表領域の名前を変更する
    2. 表領域を読み取り専用に変更する
    3. EXPDP の場合は、表領域のメタデータをエクスポートします。
    4. 一時インスタンスをシャットダウンします。
  5. ターゲット インスタンスで次の操作を行います。
    1. IMPDP の場合、表領域のメタデータ(TRANSPORT_DATAFILES)を、ターゲット インスタンスに再マッピング スキーマを使用してインポートします。
    2. 表領域を読み取り / 書き込みに変更する

始める前に

始める前に、次の手順を行います。

  1. データベースのバックアップがバックアップ プラン ポリシーに従って実行されていることを確認します。
  2. ターゲット サーバーでスクリプトを設定します。

    1. root としてデータベース サーバーにログインします。次のコマンドを実行して、ディレクトリを /act に変更し、/act/scripts ディレクトリを作成します(存在しない場合)。

        cd /act
        mkdir -p /act/scripts
        cd /act/scripts
      
    2. /act/act_scripts/objectrefresh/ からすべてのファイルをコピーする

    3. act_<schema>_refresh.conf をターゲット スキーマ名 testuser(<schema> が testuser)の act_testuser_refresh.conf に移動します。

      ここで

      • SOURCE_SCHEMA_NAME: ターゲットに提示されるソース データベース スキーマ。
      • TARGET_SID: スキーマが更新されるターゲット データベースの SID。
      • TARGET_SCHEMA_NAME: ソーススキーマを使用して更新するターゲット データベース スキーマ。

Backup and DR ワークフローを作成する

スキーマの更新を実行する Backup and DR ワークフローを作成するには、次の操作を行います。

  1. アプライアンス管理コンソールで [App Manager] > [Workflows] を開き、[Add Workflow] を選択します。
  2. [Add Workflow: Select an Application] リストで、使用するデータベースを右クリックして [Next] をクリックします。
  3. [Add Workflow: Configure] ページが表示されます。

    • Backup and DR ワークフローに一意の名前を指定します。Backup and DR ワークフロー名に特殊文字は使用できません。
    • [Direct Mount] を選択します。
    • Backup and DR ワークフローを実行するバックアップ / リカバリ アプライアンスを選択します。
    • [Schedule Type] で [On Demand] を選択します。
    • [Source] で、最新のスナップショットか本番環境の最新のスナップをソース バックアップとして選択します。
    • [Mount Label] で、アクティブなマウントを表示したときにこの Backup and DR ワークフローからのマウントを識別できるように、固有識別子を指定します。
    • [Hosts] リストでターゲット Host を選択します。
  4. [Mapping Options] で、次の操作を行います。

    • マウントされたドライブの場所を入力します(例: )。M:、D:\testdb1、/oracledata/db1data - 一時コピーを ASM 以外の場所に配置する場合。
    • [Preferred Diskgroup Name] にディスク グループ名を追加します。
    • [RAC Node List] に、IP アドレスをコロンで区切って入力します。
  5. [Pre Script] フィールドに「act_ttswfpre.sh actSCHEMArefresh.conf」と入力します。actSCHEMA_refresh.conf は、ステップ 1 で作成したファイルです。

  6. [Post Script] フィールドに「ttswfpost.sh actSCHEMArefresh.conf」と入力します。actSCHEMA_refresh.conf は、ステップ 1 で作成したファイルです。

  7. 1800 秒以上のタイムアウト値を入力します。

  8. [Create New Virtual Application] を選択します。

  9. ターゲット データベースの SID を入力します。これは一時 SID です。

  10. [OS Username] に、ターゲット マシンの Oracle ソフトウェア バイナリを所有するユーザーの OS ユーザー名を入力します。

  11. [ORACLE_HOME] に、構成ファイルで指定されている Oracle ホーム ディレクトリを入力します。

  12. 矢印をクリックして [Advanced Options] を開きます。[TNS ADMIN Directory Path] にターゲット マシンの TNS Admin ディレクトリのパスを入力し、一時インスタンスの SGA の割合の下限を指定します。ヘルプを表示するには、フィールド ラベルをクリックします。

  13. [Standalone Non-RAC] を選択します。

  14. [追加] をクリックします。

Backup and DR ワークフローを実行する

Backup and DR ワークフローを作成したら、次の手順で実行します。

  1. Backup and DR ワークフローを右クリックして、[Run Now] をクリックします。
  2. [Initiate Scheduled Workflow Now] を選択して [Submit] をクリックします。

    ログは、ターゲット ホストの /var/act/log でモニタリングできます。

  3. Backup and DR ワークフローに成功状態が表示されると、ターゲット データベースのスキーマが更新されます。

    1. ターゲット データベースに TARGET_SCHEMA_NAME が存在しない場合は、Backup and DR によって最初のユーザーが作成されて、デフォルトのユーザー パスワードが abc#1234 に設定されます。
    2. ターゲット データベースの更新されたスキーマの表領域は、次のように、スキーマ名を接頭辞としてターゲットに提示されます: (Schema)_(Source_Tablespace_Name)

マウントされたバックアップをマウント解除する

マウントされたバックアップをマウント解除するには、次の手順を行います。

  1. ターゲット データベースの表領域とデータファイルを削除します。

    ```sql
    SQL>alter tablespace <TBS_NAME> offline immediate;
    SQL>drop tablespace <TBS_NAME> including contents and datafiles;
    ```
    
  2. [App Manager] > [Active Mounts] ページを開きます。マウントを解除するバックアップを右クリックして [Unmount and Delete] を選択し、[Submit] をクリックしてジョブを送信します。

Oracle 12c 以降のデータベース PDB を仮想 PDB としてターゲット上の既存のデータベース コンテナに提示する

12c より前の Oracle バージョンを使用している場合は、Backup and DR ワークフローを使用して Oracle データベース スキーマを更新するをご覧ください。

たとえば、複数のアプリケーションを持つソース データベース インスタンスがあり、各アプリケーションに独自の PDB があるとします。スキーマレベルで仮想コピーを作成して更新し、各 PDB を同じターゲットまたは別のターゲットに個別に更新できます。手順は次のとおりです。

始める前に

始める前に、ターゲット サーバーでスクリプトを設定します。

  1. /act/act_scripts/pdbrefresh からスクリプトの ZIP ファイルを取得します。
  2. root としてデータベース サーバーにログインします。
  3. /act に移動し、/act/scripts ディレクトリが存在しない場合は作成します。

    cd /act
    mkdir -p /act/scripts
    cd /act/scripts
    
  4. ファイルを抽出します。

  5. スクリプト ファイルを /act/scripts にコピーします。

    cp /act/act_scripts/pdbrefresh/act_pdbclone_pre.sh /act/scripts/
    cp /act/act_scripts/pdbrefresh/act_pdbclone_post.sh /act/scripts/
    

PDB クローンジョブを実行する Backup and DR ワークフローを作成する

  1. [App Manager Workflows] ページで、[Add Workflow] をクリックします。
  2. Oracle データベースを右クリックして [Next] を選択します。
  3. Backup and DR ワークフローの名前を入力し、[Direct Mount] と [On Demand] を選択します。

  4. ターゲット ホストのチェックボックスをオンにします。

  5. 一時コピーが ASM 以外にある場合は、[マッピング オプション] で、[マウント アクション] として [マウント場所を指定] を選択し、マウント場所を指定します。

  6. [Pre Script] フィールドと [Post Script] フィールドに次のように入力します。 act_pdbclonepre.sh "TARGET_DB_SIDSOURCE_PDB_NAME-TARGET_PDB_NAME" act_pdbclonepost.sh "TARGET_DB_SIDSOURCE_PDB_NAME-TARGET_PDB_NAME" ここで、 TARGET_DB_SID = PDB をアタッチするターゲット データベースの SID SOURCE_PDB_NAME = ターゲット コンテナにアタッチする必要があるソース PDB の名前 TARGET_PDB_NAME = ソースの名前変更先のターゲット PDB 名。

  7. 両方のスクリプトの [タイムアウト] を 18000 に設定します。

  8. [Create New Virtual Application] を選択します。

  9. ターゲット データベースの SID を入力します。これは、act_pdb_config.conf ファイルで定義されている一時 SID です。

  10. ターゲット マシンの Oracle ソフトウェア バイナリを所有するユーザーの OS ユーザー名を入力します。

  11. [ORACLE_HOME] に、構成ファイルで指定されている Oracle ホーム ディレクトリを入力します。

  12. 矢印をクリックして [Advanced Options] を開きます。ターゲット マシンの TNS ADMIN ディレクトリを指定し、一時インスタンスの SGA の最小値を指定します。

  13. [Standalone Non-RAC] を選択します。

  14. ページの下部にある [追加] をクリックします。

Backup and DR ワークフローを実行する

Backup and DR ワークフローを作成したら、次の手順で実行します。

  1. [App Manager] > [Workflows] をクリックし、Backup and DR ワークフローを右クリックして [Run Now] をクリックします。
  2. [Provision New Virtual Application] を選択し、詳細を入力して [Submit] をクリックします。
  3. ログは、ターゲット ホストの /var/act/log でモニタリングできます。

    Backup and DR ワークフローが成功状態になると、ターゲット データベースの PDB がクローンされます。

    ターゲット PDB を最新または古いソースデータで再度更新する必要がある場合は、Backup and DR ワークフローの [今すぐ実行] ボタンをクリックし、[既存の仮想アプリケーションを更新] を選択して、[完了] をクリックします。

マウントされたバックアップをマウント解除する

マウントされたバックアップをマウント解除する手順は次のとおりです。

  1. [復元] タブで、マウントを解除するバックアップを選択します。
  2. ターゲット データベースのプラガブル データベースとデータファイルを削除します。

    SQL>alter pluggable database <PDB_NAME> close immediate;
    SQL>drop pluggable database <PDB_NAME> including datafiles;
    

    または、事前スクリプトを実行します。

    cd /act/scripts
    ./ act_pdbclone_pre.sh
    
  3. [App Manager] > [Active Mounts] リストをクリックし、マウントを解除するバックアップを右クリックして [Unmount and Delete] を選択し、[Submit] をクリックしてジョブを送信します。

Oracle DBA ガイド