28 RMANバックアップを使用した簡易データ・トランスポート

Oracle Database 23ai以降、RMANでは、プラットフォーム間でデータをトランスポートするための簡易化された方法が提供されています。

28.1 簡易データ・トランスポートの概念

テープに格納された通常のRMANバックアップを使用して、ソース・プラットフォームから宛先プラットフォームに表領域とプラガブル・データベース(PDB)をトランスポートできます。

簡易データ・トランスポートの方法により、通常の本番バックアップ・スケジュールの一部として利用可能な既存のバックアップを活用できます。宛先プラットフォームでは、RMANはデータ・トランスポート・プロセスを簡略化された効率的な方法で完了するために、RMANバックアップからデータファイルをリストアして、宛先データベースの表領域またはPDBをプラグインします。

たとえば、PDBを迅速にトランスポートするには、PDBの既存のバックアップからデータファイルをリストアしてから、宛先CDBにPDBをプラグインします。

RMANは、バックアップ情報をリカバリ・カタログまたはトランスポート・ファイルのどちらかから取得します。NOCATALOGモードでは、トランスポート・ファイルはXML形式のバックアップ情報をRMANに提供します。

プラットフォーム間でデータをトランスポートするためにRMANバックアップを使用すると、次の利点が得られます。
  • ソース・プラットフォームから宛先プラットフォームへのデータのトランスポートとリストアに関連するすべての複雑性をオフロードできます。
  • 通常のRMANバックアップを使用してデータをトランスポートできます。これにより、表領域またはPDBをトランスポートするための準備に追加のステップが不要になります。
  • データをトランスポートするためのアプリケーション・ダウンタイムを大幅に短縮できます。ソース・プラットフォームでバックアップを作成し、宛先プラットフォームでバックアップからデータファイルをリストアするときに、ソース・データベースは期間全体にわたって運用状態を維持できます。このプロセスでは、RMANが宛先プラットフォームで最終的なリストア操作を実行する必要があるときにのみ、最小限のアプリケーション停止時間が必要になります。

28.1.1 RMANバックアップを使用したデータのトランスポートの方法

Oracle Database 23ai以降では、PDBと表領域に対応するRMANバックアップを使用してそれらをトランスポートするために、次のいずれかの方法を使用します:

  • リカバリ・カタログ接続を使用したプラットフォーム間でのPDBと表領域のトランスポート

    この方法では、バックアップを作成してリストアを実行するときに、RMANは同じリカバリ・カタログに接続しておく必要があります。

    宛先データベースでは、インメモリー・トランスポート・リストを生成するために、最初にRESTORE PREVIEWコマンドをTO TRANSPORT LISTオプション付きで実行する必要があります。その後で、トランスポート・リストを使用してRESTOREコマンドを実行できます。RMANは、バックアップからデータファイルをリストアし、増分バックアップを適用することでリストアしたデータファイルをロールフォワードしてから、宛先データベースの表領域またはPDBをプラグインします。

  • NOCATALOGモードのプラットフォーム間でのPDBと表領域のトランスポート

    この方法では、ソース・データベースにトランスポート・ファイルを作成する必要があります。RESTORE PREVIEWコマンドをTO TRANSPORT FILEオプション付きで実行して、ソース・データベースのバックアップに関する情報をトランスポート・ファイルに格納します。

    宛先データベースで、トランスポート・ファイルを使用してRESTOREコマンドを実行します。RMANは、バックアップからデータファイルをリストアし、増分バックアップを適用することでリストアしたデータファイルをロールフォワードしてから、宛先データベースの表領域またはPDBをプラグインします。

  • ネットワーク経由でのプラガブル・データベースと表領域のトランスポート

    この方法では、RMANはソース・データベース・ファイルを使用して、ネットワーク経由でデータを最適にトランスポートします。RMANでは、ソース・プラットフォームへの接続、必要なバックアップの作成、バックアップのネットワーク経由での宛先プラットフォームへのトランスポートおよびリストア操作を実行できます。

28.1.2 RMANバックアップを使用したデータのトランスポートの前提条件

RMANバックアップを使用してデータをトランスポートする前に、一般的な前提条件を満たしていることを確認してください。
  • 別のプラットフォームにPDBをトランスポートする前に、次の事項を確認してください。
    • 宛先プラットフォームは、ソース・プラットフォームと同じエンディアン形式に従っている
    • PDBはローカルUNDOを使用する
  • 表領域をトランスポートする前に、表領域が自己完結型であることを確認します。表領域セットが自己完結型かどうかを判別するには、オラクル社が提供するDBMS_TTSパッケージのTRANSPORT_SET_CHECKプロシージャを実行します。

    表領域については、ソース・プラットフォームとは異なるエンディアン形式を使用する宛先プラットフォームにトランスポートできます。

こうした前提条件は、データのトランスポートに選択した方法のタイプに固有です。
  • リカバリ・カタログ・ベースの方法では、次の事項を確認します。
    • ソース・データベースおよびターゲット・データベースのCOMPATIBLE初期化パラメータは、23.0に設定されている必要があります。
    • ソース・データベースと宛先データベースは、どちらも同じリカバリ・カタログに登録されます。
    .
  • NOCATALOGモード・ベースの方法では、RMANにはXML形式で格納されたバックアップ情報を含むトランスポート・ファイルが必要です。宛先データベースでバックアップからデータファイルをリストアする前に、トランスポート・ファイルを共有の場所または宛先ホストからアクセスできるネットワーク・ファイルの場所(NFS)のパスに格納してください。
  • ネットワークベースの方法:
    • PDBまたは表領域の宛先プラットフォームへの最終的なトランスポートを実行する前に、宛先データベースでデータベース・リンクを作成する必要があります。

      SQL*PLUS CREATE DATABASE LINK文を使用してPUBLIC dblinkを作成します。

      たとえば、次の文では、宛先データベースのユーザーrcoが、CDB cdb1のプラガブル・データベースpdb1を参照するnetworklinkというデータベース・リンクを定義しています。
      CREATE PUBLIC DATABASE LINK pluginlink CONNECT TO rco IDENTIFIED BY password USING 'cdb1_pdb1'

      dblinkは、ソース・データベースから宛先データベースにエクスポート・ダンプ・ファイルまたはPDBアンプラグXMLファイルをトランスポートするために使用されます。

    • ネットワーク経由で表領域の最終的なトランスポートを実行する前に、ソース・データベースのSYSBACKUPユーザーにEXP_FULL_DATABASE権限を付与します。

28.2 リカバリ・カタログを使用したプラットフォーム間でのPDBのトランスポート

RMANがリカバリ・カタログに接続されているときに、PDBのバックアップを使用してPDBをトランスポートできる様々な方法について説明します。

28.2.1 リカバリ・カタログ接続を使用したPDBのトランスポートについて

この方法では、RMANはリカバリ・カタログに格納されているメタデータを問い合せて、リストア操作に必要な正確なバックアップを判断し、宛先CDBのPDBをプラグインします。

RMANがリカバリ・カタログに接続されているときに、PDBバックアップを使用してPDBをトランスポートするために実行する必要がある主要なステップは、次のとおりです。

ソースCDB:

  • RMANをリカバリ・カタログに接続します
  • PDBの既存のバックアップを使用するか、BACKUP PLUGGABLE DATABASEコマンドを使用して新しいバックアップを作成します
  • ソースPDBが読取り専用モードの場合はPDBの最終的な増分レベル1のバックアップを作成します。
    • BACKUP PLUGGABLE DATABASEコマンドを使用して、最終的な増分レベル1のバックアップを作成します。
    • DATAPUMP句を使用して、増分バックアップに付随するエクスポート・ダンプ・ファイルを作成します。

宛先CDB:

  • RMANをソースCDBと同じリカバリ・カタログに接続します。
  • SETコマンドをFOREIGN DBID句とともに使用して、ソースPDBのDBIDを設定します
  • RESTOREコマンドをPREVIEW句およびTO TRANSPORT LIST句とともに使用して、トランスポート・リストを生成します。トランスポート・リストはインメモリーに維持され、宛先CDBでリストア操作を実行するためにRMANが必要とするPDBバックアップを示します。
  • RESTOREコマンドをFROM TRANSPORT LIST句とともに使用して、トランスポート・リストを使用したリストア操作を実行します。RMANは、バックアップからデータファイルをリストアし、ロールフォワードして、宛先CDBのPDBをプラグインします。

ノート:

宛先データベースでOracle Active Data Guardの論理データベース・ローリング・アップグレード・プロセスが実行中の場合、RMANはバックアップを使用したデータのトランスポートに関連する最終ステップを正常に完了できなくなります。この理由は、ローリング・アップグレード・プロセスが、RMANによる最終的なバックアップのリストアと宛先データベースでのPDBのプラグインに必要なバックアップ・メタデータのインポートを制限するためです。

28.2.2 リカバリ・カタログ接続を使用したPDBの迅速なトランスポート

この方法は、バックアップにかかる時間が短い小規模なPDBをトランスポートする場合にお薦めします。

このクイック・トランスポートの方法では、ソースPDBの増分レベル0のバックアップと、そのバックアップに付随するエクスポート・ダンプ・ファイルを作成する必要があります。宛先プラットフォームで、トランスポート・リストを生成し、そのトランスポート・リストを使用して単一のリストア操作を実行します。RMANは、レベル0のバックアップからデータファイルをリストアしてから、宛先CDBのPDBをプラグインします。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.2.2.1 ソースCDB: リカバリ・カタログ接続を使用したPDBの迅速なトランスポートの準備

ソースPDBが読取り専用モードの場合は、増分レベル0のバックアップと、そのバックアップに付随するエクスポート・ダンプ・ファイルを作成します。

  1. ソースCDBで、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。
  2. リカバリ・カタログに接続します。
  3. 宛先プラットフォームにトランスポートするPDBをクローズします。

    次のコマンドでは、hr_pdbというPDBをクローズします。

    RMAN> ALTER PLUGGABLE DATABASE hr_pdb CLOSE IMMEDIATE;
  4. PDBの増分レベル0のバックアップを作成し、ソースCDBからPDBをアンプラグします。

    たとえば、次の文は、PDB hr_pdbの増分レベル0のバックアップを作成します。PDBはソースCDBからアンプラグされます。UNPLUG INTO句では、PDBがソースCDBからアンプラグされたときにPDBの構造メタデータを格納するためのXMLファイルを指定します。TAG句は、RMANバックアップの識別に使用されるバックアップ・タグを指定します。

    RMAN> BACKUP 
    UNPLUG INTO '/tmp/pdb_dumpfiles/hr_pdb_unplug.xml'
    INCREMENTAL LEVEL 0
    PLUGGABLE DATABASE hr_pdb
    XML BACKUP FORMAT '/tmp/pdb_backups/hr_pdb_unplug.bck'
    TAG 'hr_pdb_plugin_tag';
    この例では、hr_pdb_unplug.xmlファイルには、宛先CDBのPDBをプラグインするために必要なメタデータが含まれています。hr_pdb_unplug.bckファイルには、アンプラグ・ファイルhr_pdb_unplug.xmlのバックアップが含まれています。
  5. RMANによって表示されたソースDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=39525561)
28.2.2.2 宛先CDB: リカバリ・カタログ接続を使用したPDBの迅速なリストアとプラグイン

RMANがリカバリ・カタログに接続されているときに、宛先CDBにPDBをすばやくトランスポートするために必要な最終ステップを実行します。

  1. リカバリ・カタログに宛先CDBを接続します。
  2. SETコマンドをFOREIGN DBID句とともに使用して、ソース・データベースのDBIDを指定します。

    次のコマンドは、ソース・データベースのDBIDを設定します。

    RMAN> SET FOREIGN DBID 39525561;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTORE... PREVIEWコマンドをTO TRANSPORT LISTオプションとともに実行して、RMANでリストア操作に必要なバックアップのインメモリー・リストを生成します。

    PLUGIN TAG句を使用して、ソースPDBの最終的な増分バックアップに関連付けられた同じタグを指定します。リストア操作中に、RMANはタグを使用して、同じタグで作成された増分バックアップからデータファイルをリストアします。

    PLUGGABLE DATABASEコマンドを使用して、ソースPDBを指定します。

    次の例では、RMANが宛先CDBでリストアする必要があるソースPDBバックアップ・ファイルのインメモリー・トランスポート・リストを生成します。

    RMAN> RESTORE PREVIEW
          TO TRANSPORT LIST
          PLUGIN TAG 'hr_pdb_plugin_tag'
          PLUGGABLE DATABASE 'hr_pdb';
  2. このコマンドを実行して、外部データベースIDをクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  4. 宛先CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;

バックアップからデータファイルをリストアし、トランスポート・リストを使用してPDBをプラグインします。

  1. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE hr_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT LIST;
    RMANは、増分レベル0のバックアップからデータファイルをリストアしてから宛先CDBのPDBをプラグインします。

28.2.3 既存のバックアップおよびリカバリ・カタログ接続を使用したPDBのトランスポート

RMANでは、通常のバックアップ・スケジュールの一部として使用可能な既存のPDBバックアップ(レベル0)を利用してPDBをトランスポートできます。

ソースPDBが読取り専用モードの場合、ソースPDBの最終的な増分レベル1のバックアップと、その増分バックアップに付随するエクスポート・ダンプ・ファイルを作成する必要があります。

宛先CDBで、トランスポート・ファイルを生成し、そのトランスポート・ファイルを使用して単一のリストア操作を実行します。RMANは、PDBの既存のレベル0の最新バックアップを使用してデータファイルをリストアし、最終的な増分レベル1のバックアップを適用することでリストアしたデータファイルをロールフォワードしてから、宛先CDBのPDBをプラグインします。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.2.3.1 ソースCDB: 既存のバックアップおよびリカバリ・カタログ接続を使用したPDBのトランスポートの準備

PDBの最新の既存のバックアップを使用して、宛先プラットフォームにPDBをトランスポートできます。

  1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
  2. リカバリ・カタログに接続します。
  3. 宛先プラットフォームにトランスポートするPDBをクローズします。

    次のコマンドでは、hr_pdbというPDBをクローズします。

    RMAN> ALTER PLUGGABLE DATABASE hr_pdb CLOSE IMMEDIATE;
  4. PDBの最終増分レベル1バックアップを作成し、ソースCDBからPDBを切断します。

    次の文では、hr_pdbというPDBの最終的な増分レベル1のバックアップを作成します。PDBはソースCDBからアンプラグされます。UNPLUG INTO句では、PDBがソースCDBからアンプラグされたときにPDBの構造メタデータを格納するためのXMLファイルを指定します。TAG句は、RMANバックアップの識別に使用されるタグを指定します。

    RMAN> BACKUP 
    UNPLUG INTO '/tmp/pdb_dumpfiles/hr_pdb_unplug.xml'
    INCREMENTAL LEVEL 1
    PLUGGABLE DATABASE hr_pdb
    XML BACKUP FORMAT '/tmp/pdb_backups/hr_pdb_unplug.bck'
    TAG 'hr_pdb_plugin_tag';
    この例では、hr_pdb_unplug.xmlファイルには、宛先CDBのPDBをプラグインするために必要なメタデータが含まれています。hr_pdb_unplug.bckファイルには、アンプラグ・ファイルhr_pdb_unplug.xmlのバックアップが含まれています。
  5. 起動時に、RMANによって表示されたDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=39525561)
28.2.3.2 宛先CDB: リカバリ・カタログ接続を使用した既存のバックアップからのデータファイルのリストアとPDBのプラグイン

既存のPDBバックアップからデータファイルをリストアして、宛先CDBのPDBをプラグインします。

  1. リカバリ・カタログに宛先CDBを接続します。
  2. SETコマンドをFOREIGN DBID句とともに使用して、ソース・データベースのDBIDを指定します。

    次のコマンドは、ソース・データベースのDBIDを設定します。

    RMAN> SET FOREIGN DBID 39525561;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTORE... PREVIEWコマンドをTO TRANSPORT LISTオプションとともに実行して、RMANによってリストア操作で使用されるバックアップのインメモリー・リストを生成します。

    PLUGIN TAG句を使用して、PDBの最終的な増分レベル1のバックアップに関連付けられた同じタグを指定します。リストア操作中に、RMANはタグを使用して、同じタグで作成された増分レベル1のバックアップからデータファイルをリストアします。

    PLUGGABLE DATABASEコマンドを使用して、ソースPDBを指定します。

    次の例では、RMANが宛先CDBでのリストア操作に使用する必要がある、ソースPDBバックアップ・ファイルのインメモリー・トランスポート・リストを生成します。

    RMAN> RESTORE PREVIEW
          TO TRANSPORT LIST
          PLUGIN TAG 'hr_pdb_plugin_tag'
          PLUGGABLE DATABASE 'hr_pdb';
  2. このコマンドを実行して、外部データベースIDをクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  4. CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  5. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE hr_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT LIST;
    RMANは、PDBのレベル0のバックアップからデータファイルをリストアし、増分レベル1のバックアップを適用することでリストアしたデータファイルをロールフォワードしてから、宛先CDBのPDBをプラグインします。

28.2.4 複数の増分バックアップおよびリカバリ・カタログ接続を使用したPDBのトランスポート

この方法は、ソースPDBのアプリケーション停止時間を最小限に抑えながら、プラットフォーム間で大規模なPDBをトランスポートする場合にお薦めします。

宛先CDBでは、最初にPDBの既存のバックアップまたは新規のバックアップからデータファイルをリストアする必要があります。その後、リストアしたデータファイルは、複数の増分レベル1のバックアップを定期的に適用することでロールフォワードできます。ソースPDBがオープン状態と運用可能状態を維持している間は、最終的なトランスポートを実行するまで、宛先CDBで任意の数のレベル1の増分バックアップを適用し続けることができます。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.2.4.1 ソースCDB: 複数の増分バックアップおよびリカバリ・カタログ接続を使用したPDBのトランスポートの準備

既存のPDBバックアップを活用できます。オプションで、この手順はソースPDBの増分レベル0のバックアップを作成するために使用します。

ソースPDBの既存のレベル0のバックアップを使用することで始める場合は、「ステップ2」までスキップします。
  1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
  2. リカバリ・カタログに接続します。
  3. ソースCDBで、BACKUP PLUGGABLE DATABASEコマンドを使用して、宛先CDBにトランスポートするPDBの増分レベル0のバックアップを作成します。

    次の文は、PDB sales_pdbの増分レベル0のバックアップを作成します。

    RMAN> BACKUP
    INCREMENTAL LEVEL 0
    PLUGGABLE DATABASE sales_pdb;
  4. 起動時に、RMANによって表示されたDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=39525561)
28.2.4.2 宛先CDB: リカバリ・カタログ接続を使用したPDBのレベル0のバックアップからのデータファイルのリストア

レベル0のバックアップは、それに続くPDBの増分レベル1のバックアップを適用するためのRMANの基礎として機能します。

  1. リカバリ・カタログに宛先CDBを接続します。
  2. SETコマンドをFOREIGN DBID句とともに使用して、ソースPDBのDBIDを指定します。

    次のコマンドは、ソースPDBのDBIDを設定します。

    RMAN> SET FOREIGN DBID 39525561;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTORE... PREVIEWコマンドをTO TRANSPORT LISTオプションとともに実行して、RMANによってリストア操作に使用されるバックアップのインメモリー・リストを生成します。

    PLUGGABLE DATABASEコマンドを使用して、宛先ホストにトランスポートするPDBの名前を指定します。

    次の例では、RMANが宛先CDBでトランスポートおよびリストアする必要があるソースPDBバックアップ・ファイルのインメモリー・トランスポート・リストを生成します。

    RMAN> RESTORE PREVIEW
          TO TRANSPORT LIST
          PLUGGABLE DATABASE 'sales_pdb';
  2. このコマンドを実行して、外部データベースIDの現在の設定をクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  4. CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  5. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE sales_pdb
    FORMAT '/oradata/%U'
    FROM TRANSPORT LIST;
    宛先CDBで、RMANはソースPDB sales_pdbの増分レベル0のバックアップからデータファイルをリストアします。
28.2.4.3 リカバリ・カタログ接続を使用したPDBの増分バックアップのリストア

宛先CDBでは、レベル1の増分バックアップを定期的に適用することで、リストアされたデータファイルをロールフォワードします。

ソースPDBがオープンしている間は、ソースPDBのレベル1増分バックアップを作成してから、宛先CDBでリストア操作を実行できます。この方法を使用すると、アプリケーションの停止時間を最小限に抑え、PDBの最終的なトランスポートを実行する際に宛先データベースに適用する必要がある変更データの量を削減できます。

この手順の繰返し可能な回数に制限はありません。PDBの最終的なトランスポートの実行準備ができたら、「ステップ4」に進みます。

ソースCDBで、PDBのレベル1の増分バックアップを作成します。

  1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
  2. リカバリ・カタログに接続します。
  3. ソースCDBで、BACKUP PLUGGABLE DATABASEコマンドを使用してPDBの増分レベル1のバックアップを作成します。

    次の文は、PDB sales_pdbの増分レベル1のバックアップを作成します。

    RMAN> BACKUP
    INCREMENTAL LEVEL 1
    PLUGGABLE DATABASE sales_pdb;
  4. 起動時に、RMANによって表示されたDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=39525561)

宛先CDBで、PDBバックアップからデータファイルをリストアします。

  1. リカバリ・カタログに宛先CDBを接続します。
  2. SETコマンドをFOREIGN DBID句とともに使用して、ソース・データベースのDBIDを指定します。

    次のコマンドは、ソース・データベースのDBIDを設定します

    RMAN> SET FOREIGN DBID 39525561;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTORE... PREVIEWコマンドをTO TRANSPORT LISTオプションとともに実行して、RMANによって後続のリストア操作で使用されるPDBバックアップのインメモリー・リストを生成します。

    PLUGGABLE DATABASEコマンドを使用して、ソースPDBを指定します。

    次の例では、RMANが宛先CDBでトランスポートおよびリストアする必要があるソースPDBバックアップ・ファイルのインメモリー・トランスポート・リストを生成します。

    RMAN> RESTORE PREVIEW
          TO TRANSPORT LIST
          PLUGGABLE DATABASE 'sales_pdb';
  2. このコマンドを実行して、外部データベースIDをクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  4. CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  5. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE sales_pdb
    FORMAT '/oradata/%U'
    FROM TRANSPORT LIST;
    宛先CDBで、RMANはソースPDBの増分レベル1のバックアップを適用することで、以前にリストアしたデータファイルをロールフォワードします。レベル1の増分バックアップが複数作成されていると、RMANはソースPDBでバックアップが作成された順序と同じ順序で増分バックアップを適用します。
28.2.4.4 ソースCDB: リカバリ・カタログ接続を使用したPDBの最終的な増分バックアップの作成

RMANがリカバリ・カタログに接続されているときに、宛先CDBへの最終的なトランスポートのためのPDBを準備します。

  1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
  2. リカバリ・カタログに接続します。
  3. 宛先プラットフォームにトランスポートするPDBをクローズします。

    次のコマンドは、PDB sales_pdbをクローズします。

    RMAN> ALTER PLUGGABLE DATABASE sales_pdb CLOSE IMMEDIATE;
  4. PDBの最終増分レベル1バックアップを作成し、ソースCDBからPDBを切断します。

    次の文は、PDB sales_pdbの増分レベル1のバックアップを作成します。PDBはソースCDBからアンプラグされます。UNPLUG INTO句では、PDBがソースCDBからアンプラグされたときにPDBの構造メタデータを格納するためのXMLファイルを指定します。TAG句は、RMANバックアップの識別に使用されるバックアップ・タグを指定します。

    RMAN> BACKUP 
    UNPLUG INTO '/tmp/pdb_dumpfiles/sales_pdb_unplug.xml'
    INCREMENTAL LEVEL 1
    PLUGGABLE DATABASE sales_pdb
    XML BACKUP FORMAT '/tmp/pdb_backups/sales_pdb_unplug.bck'
    TAG 'sales_pdb_plugin_tag';
    この例では、宛先CDBのPDBをプラグインするために必要なメタデータがsales_pdb_unplug.xmlファイルに含まれています。sales_pdb_unplug.bckファイルには、アンプラグ・ファイルsales_pdb_unplug.xmlのバックアップが含まれています。
  5. 起動時に、RMANによって表示されたDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=39525561)
28.2.4.5 宛先CDB: リカバリ・カタログ接続を使用したPDBの最終的なトランスポートの実行

最終的なステップとして、RMANがリカバリ・カタログに接続されているときには、PDBバックアップからデータファイルをリストアし、宛先CDBにPDBをプラグインします。

  1. リカバリ・カタログに宛先CDBを接続します。
  2. SETコマンドをFOREIGN DBID句とともに使用して、ソースPDBのDBIDを指定します。

    次のコマンドは、ソースPDBのDBIDを設定します。

    RMAN> SET FOREIGN DBID 39525561;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTORE... PREVIEWコマンドをTO TRANSPORT LISTオプションとともに実行して、RMANによってリストア操作で使用されるPDBバックアップのインメモリー・リストを生成します。

    PLUGIN TAG句を使用して、ソースCDBで作成された最終的な増分レベル1のPDBバックアップに関連付けられた同じタグを指定します。リストア操作中に、RMANはタグを使用して、同じタグで作成されたレベル1の増分バックアップからデータファイルを適用します。

    PLUGGABLE DATABASEコマンドを使用して、ソースPDBを指定します。

    次の例では、RMANが宛先CDBでトランスポートおよびリストアする必要があるソースPDBバックアップ・ファイルのインメモリー・トランスポート・リストを生成します。

    RMAN> RESTORE PREVIEW
          TO TRANSPORT LIST
          PLUGIN TAG 'sales_pdb_plugin_tag'
          PLUGGABLE DATABASE 'sales_pdb';
  2. このコマンドを実行して、外部データベースIDをクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  4. 宛先CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  5. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE sales_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT LIST;
    RMANは、最終的な増分レベル1のバックアップを使用して以前にリストアしたデータファイルをロールフォワードしてから、宛先CDBのPDBをプラグインします。

28.3 NOCATALOGモードでのプラットフォーム間でのPDBのトランスポート

NOCATALOGモードでは、トランスポート・ファイルを作成して、ソースPDBのバックアップに関する情報を格納する必要があります。PDBのバックアップとトランスポート・ファイルを使用してPDBをトランスポートする様々な方法について説明します。

28.3.1 NOCATALOG MODEでのPDBのトランスポートについて

PDBバックアップを使用してPDBをトランスポートする場合、RMANはソースPDBからの正確なバックアップを識別してから、宛先CDBでリストア操作を実行する必要があります。

NOCATALOGモードでは、ソースCDB上にトランスポート・ファイルを作成する必要があります。トランスポート・ファイルは、宛先CDBにトランスポートするPDBのバックアップ・メタデータを格納するXML形式のファイルです。RMANは、バックアップからデータファイルをリストアし、宛先CDBのPDBをプラグインするためにトランスポート・ファイルを必要とします。

NOCATALOGモードでPDBをトランスポートするための主要なステップは次のとおりです。

ソースCDB:
  • 既存のレベル0のバックアップを使用するか、BACKUP PLUGGABLE DATABASEコマンドを使用して新しいバックアップを作成します。
  • ソースPDBが読取り専用に設定されている場合は、PDBの最終的な増分レベル1のバックアップを作成します。
    • BACKUP PLUGGABLE DATABASEコマンドを使用して、最終的な増分レベル1のバックアップを作成します。
    • DATAPUMP句を使用して、増分バックアップに付随するエクスポート・ダンプ・ファイルを作成します。
  • ソースCDBで、RESTORE PREVIEWコマンドをTO TRANSPORT FILE句とともに使用してトランスポートXMLファイルを作成します。
  • オペレーティング・システム固有のユーティリティを使用して、トランスポートXMLファイルをソース・ホストから宛先ホストに手動でコピーします。または、XMLファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。

宛先CDBで、単一のリストア操作を実行します。

RESTOREコマンドを、FROM TRANSPORT FILE句およびPLUGGABLE DATABASE句を指定して使用します。RMANは、指定したトランスポート・ファイルを使用してバックアップからデータファイルをリストアし、宛先CDBのPDBをプラグインします。

ノート:

宛先データベースでOracle Active Data Guardの論理データベース・ローリング・アップグレード・プロセスが実行中の場合、RMANはバックアップを使用したデータのトランスポートに関連する最終ステップを正常に完了できなくなります。この理由は、ローリング・アップグレード・プロセスが、RMANによる最終的なバックアップのリストアと宛先CDBへのPDBのプラグインに必要なバックアップ・メタデータのインポートを制限するためです。

28.3.2 NOCATALOG MODEでのPDBの迅速なトランスポート

この方法は、バックアップにかかる時間が短い小規模なPDBをトランスポートする場合にお薦めします。

このクイック・トランスポートの方法では、ソースPDBの増分レベル0のバックアップと、そのバックアップに付随するエクスポート・ダンプ・ファイルを作成することが必要です。宛先プラットフォームで単一のリストア操作を実行して、レベル0のバックアップからデータファイルをリストアし、宛先CDBのPDBをプラグインしてPDBのトランスポートを完了します。

NOCATALOGモードでは、トランスポート・ファイルを生成して、PDBのバックアップに関する情報をXML形式で格納する必要があります。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.3.2.1 ソースCDB: NOCATALOGモードでのPDBの迅速なトランスポートの準備

PDBバックアップとトランスポート・ファイルを使用して、PDBを迅速にトランスポートするための準備をします。

  1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
  2. 宛先プラットフォームにトランスポートするPDBをクローズします。

    次のコマンドでは、hr_pdbというPDBをクローズします。

    RMAN> ALTER PLUGGABLE DATABASE hr_pdb CLOSE IMMEDIATE;
  3. PDBの増分レベル0のバックアップを作成し、ソースCDBからPDBをアンプラグします。

    次の文は、PDB hr_pdbの増分レベル0のバックアップを作成します。PDBはソースCDBからアンプラグされます。UNPLUG INTO句では、PDBがソースCDBからアンプラグされたときにPDBの構造メタデータを格納するためのXMLファイルを指定します。TAG句は、このRMANバックアップの識別に使用されるバックアップ・タグを指定します。

    RMAN> BACKUP 
    UNPLUG INTO '/tmp/pdb_dumpfiles/hr_pdb_metadata.xml'
    INCREMENTAL LEVEL 0
    PLUGGABLE DATABASE hr_pdb
    XML BACKUP FORMAT '/tmp/pdb_backups/hr_pdb_unplug.bck'
    TAG 'hr_pdb_plugin_tag';
    この例では、hr_pdb_unplug.xmlファイルには、宛先CDBのPDBをプラグインするために必要なメタデータが含まれています。hr_pdb_unplug.bckファイルには、アンプラグ・ファイルhr_pdb_unplug.xmlのバックアップが格納されています。
  4. ソースCDBで、RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。トランスポート・ファイルは、トランスポートするPDBに対応したバックアップについての情報を格納するXMLです。RMANは、データファイルをリストアし、ロールフォワードして、宛先CDBのPDBをプラグインするためにトランスポートXMLファイルを必要とします。

    次の文は、'hr_pdb_transportfile.xml'という名前のトランスポート・ファイルを作成します。PLUGIN TAGタグでは、ソースPDB hr_pdbに対応するエクスポート・ダンプ・ファイルを識別します。

    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/hr_pdb_transportfile.xml'
    PLUGIN TAG 'hr_pdb_plugin_tag'
    PLUGGABLE DATABASE hr_pdb;
  5. オペレーティング・システム固有のユーティリティを使用して、トランスポート・ファイルをソース・ホストから宛先ホストに手動でコピーします。または、トランスポート・ファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。
28.3.2.2 宛先CDB: NOCATALOGモードでのデータファイルの迅速なリストアとPDBのプラグイン

単一のリストア操作を実行することで、PDBバックアップとトランスポート・ファイルを使用したPDBの迅速なトランスポートを完了します。

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  2. 宛先CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  3. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT FILE句とともに、RESTOREコマンドを実行します。
    FROM TRANSPORT FILE句で、ソース・ホスト上に作成されたトランスポートXMLファイルを指定します。
    次の例では、ソースPDBのレベル0のバックアップからデータファイルをリストアして、PDB hr_pdbを宛先CDBにプラグインします。リストア操作に必要なメタデータは、FROM TRANSPORT FILE句を使用して指定します。そのメタデータは、hr_pdb_transportfile.xmlファイルに格納されています。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE hr_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT FILE '/tmp/xplat_backups/hr_pdb_transportfile.xml';
    バックアップおよび以前のリリースのOracle Databaseで作成されたPDBアンプラグXMLファイル・バックアップを使用してPDBをトランスポートする場合、RESTOREコマンドを実行するときに次を含める必要があります:
    • RMANでアンプラグXMLファイルをリストアする必要があることを指定するXMLFILE句。
    • PDBアンプラグXMLファイルを抽出して保存する宛先データベース上のディレクトリを指定するXMLFILE DESTINATION句。
    • PDBアンプラグXMLファイルが含まれるバックアップ・セットの名前を指定するFROM BACKUPSET句。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE hr_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT FILE '/tmp/xplat_backups/hr_pdb_transportfile.xml'
    XMLFILE 'hr_pdb_unplug.xml' XMLFILE DESTINATION '/tmp/xplat_backups/'
    FROM BACKUPSET 'hr_pdb_unplug.bck';

    この例では、バックアップ・セットhr_pdb_unplug.bckからアンプラグXMLファイルhr_pdb_unplug.xmlを抽出するための場所として/tmp/xplat_backups/が指定されています。

28.3.3 既存のPDBバックアップおよびNOCATALOGモードを使用したPDBのトランスポート

この手順は、既存のPDBバックアップ(レベル0)とトランスポート・ファイルを使用して、PDBをトランスポートする場合に使用します。

ソースPDBが読取り専用モードの場合は、RMANを使用して、PDBの最新の既存のレベル0のバックアップからデータファイルをリストアし、宛先CDBのPDBをプラグインできます。

NOCATALOGモードでは、トランスポート・ファイルを生成して、ソースPDBのバックアップに関する情報をXML形式で格納する追加の手順を実行する必要があります。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.3.3.1 ソースCDB: 既存のバックアップおよびNOCATALOGモードを使用したPDBのトランスポートの準備

PDBの最新の既存のバックアップとトランスポート・ファイルを使用してPDBをトランスポートします。

  1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
  2. 宛先プラットフォームにトランスポートするPDBをクローズします。

    次のコマンドでは、hr_pdbというPDBをクローズします。

    RMAN> ALTER PLUGGABLE DATABASE hr_pdb CLOSE IMMEDIATE;
  3. PDBの最終増分レベル1バックアップを作成し、ソースCDBからPDBを切断します。

    次の文は、PDB hr_pdbの増分レベル1のバックアップを作成します。PDBはソースCDBからアンプラグされます。UNPLUG INTO句では、PDBがソースCDBからアンプラグされたときにPDBの構造メタデータを格納するためのXMLファイルを指定します。TAG句は、このRMANバックアップの識別に使用されるバックアップ・タグを指定します。

    RMAN> BACKUP 
    UNPLUG INTO '/tmp/pdb_dumpfiles/hr_pdb_unplug.xml'
    INCREMENTAL LEVEL 1
    PLUGGABLE DATABASE hr_pdb
    XML BACKUP FORMAT '/tmp/pdb_backups/hr_pdb_unplug.bck'
    TAG 'hr_pdb_plugin_tag';
    この例では、hr_pdb_unplug.xmlファイルには、宛先CDBのPDBをプラグインするために必要なメタデータが含まれています。hr_pdb_unplug.bckファイルには、アンプラグ・ファイルhr_pdb_unplug.xmlのバックアップが格納されています。
  4. ソース・データベースで、RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。トランスポート・ファイルは、トランスポートするPDBに対応するバックアップについての情報を格納するXMLファイルです。

    次の文は、hr_pdb_transportfile.xmlという名前のトランスポート・ファイルを作成します。プラグイン・タグでは、ソースPDB hr_pdbに対応するエクスポート・ダンプ・ファイルを識別します。

    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/hr_pdb_transportfile.xml'
    PLUGIN TAG 'hr_pdb_plugin_tag'
    PLUGGABLE DATABASE hr_pdb;
  5. オペレーティング・システム固有のユーティリティを使用して、トランスポート・ファイルをソース・ホストから宛先ホストに手動でコピーします。または、トランスポート・ファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。
28.3.3.2 宛先CDB: NOCATALOGモードでの既存のバックアップからのデータファイルのリストアとPDBのプラグイン

トランスポート・ファイルは、PDBのバックアップからデータファイルをリストアして、宛先CDBのPDBをプラグインするために使用します。

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  2. CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  3. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT FILE句を指定してRESTOREコマンドを実行します。
    FROM TRANSPORT FILE句で、ソース・ホスト上に作成されたトランスポートXMLファイルを指定します。
    次の例では、RMANはソースPDBの既存のレベル0の最新バックアップからデータファイルをリストアし、レベル1の増分バックアップを適用することでリストアしたデータファイルをロールフォワードしてから、宛先CDBにPDB hr_pdbをプラグインします。リストア操作に必要なメタデータは、FROM TRANSPORT FILE句を使用して指定します。そのメタデータは、hr_pdb_transportfile.xmlファイルに格納されています。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE hr_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT FILE '/tmp/xplat_backups/hr_pdb_transportfile.xml';
    バックアップおよび以前のリリースのOracle Databaseで作成されたPDBアンプラグXMLファイルを使用してPDBをトランスポートする場合、RESTOREコマンドを実行するときに次を含める必要があります:
    • RMANでアンプラグXMLファイルをリストアする必要があることを指定するXMLFILE句。
    • PDBアンプラグXMLファイルを抽出して保存する宛先データベース上のディレクトリを指定するXMLFILE DESTINATION句。
    • PDBアンプラグXMLファイルが含まれるバックアップ・セットの名前を指定するFROM BACKUPSET句。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE hr_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT FILE '/tmp/xplat_backups/hr_pdb_transportfile.xml'
    XMLFILE 'hr_pdb_unplug.xml' XMLFILE DESTINATION '/tmp/xplat_backups/'
    FROM BACKUPSET 'hr_pdb_unplug.bck';

    この例では、バックアップ・セットhr_pdb_unplug.bckからアンプラグXMLファイルhr_pdb_unplug.xmlを抽出するための場所として/tmp/xplat_backups/が指定されています。

28.3.4 NOCATALOGモードでの複数の増分バックアップを使用したPDBのトランスポート

この方法は、ソースPDBのアプリケーションの停止時間を最小限に抑えながら、プラットフォーム間で大規模なPDBをトランスポートする場合にお薦めします。

宛先CDBでは、最初にPDBの既存のバックアップまたは新規のバックアップからデータファイルをリストアする必要があります。その後、リストアしたデータファイルは、複数の増分レベル1のバックアップを定期的に適用することでロールフォワードできます。ソースPDBがオープン状態で運用可能状態を維持している間は、PDBの最終的なトランスポートを実行するまで、宛先CDBに任意の数のレベル1増分バックアップを適用し続けることができます。

NOCATALOGモードでは、トランスポート・ファイルを作成して、ソースPDBのバックアップに関する情報をXML形式で格納する必要があります。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.3.4.1 ソースCDB: PDBのベース増分バックアップの作成

既存のレベル0のバックアップを使用するか、ソースPDBの新しいバックアップを作成します。

  1. ソースCDBで、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。
  2. PDBの既存の増分レベル0のバックアップを利用する場合は、ステップ3に進みます。
    または、BACKUP PLUGGABLE DATABASEコマンドを使用して、宛先CDBに転送するPDBの増分レベル0のバックアップを作成します。

    次の文は、PDB sales_pdbの増分レベル0のバックアップを作成します。

    RMAN> BACKUP
    INCREMENTAL LEVEL 0
    PLUGGABLE DATABASE sales_pdb;
  3. BACKUP PLUGGABLE DATABASEコマンドは、PDBの増分レベル1のバックアップを作成する場合に使用します。
    次の文は、PDB sales_pdbの増分レベル1のバックアップを作成します。
    RMAN> BACKUP
    INCREMENTAL LEVEL 1
    PLUGGABLE DATABASE sales_pdb;
  4. ソース・データベースで、RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。トランスポート・ファイルは、トランスポートするPDBに対応したバックアップについての情報を格納するために作成したXMLファイルです。
    次の文は、sales_pdb_transportfile.xmlという名前のトランスポート・ファイルを作成します
    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/sales_pdb_transportfile.xml'
    PLUGGABLE DATABASE sales_pdb;
  5. オペレーティング・システム固有のユーティリティを使用して、トランスポート・ファイルをソース・ホストから宛先ホストに手動でコピーします。または、トランスポート・ファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。
28.3.4.2 ステップ2: (宛先CDB) NOCATALOGモードでのPDBのベース増分バックアップからのデータファイルのリストア

宛先CDBでは、レベル0のバックアップは、それに続くPDBの増分レベル1のバックアップからデータファイルをリストアするためのRMANの基礎として機能します。

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  2. CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  3. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT FILE句を指定してRESTOREコマンドを実行します。

    たとえば、次の文は、PDB sales_pdbの増分レベル0のバックアップからデータファイルをリストアします。

    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE sales_pdb
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/sales_pdb_transportfile.xml';
28.3.4.3 ステップ3: NOCATALOGモードでのPDBの増分バックアップを使用したデータファイルのリストア

宛先CDBでは、増分レベル1のバックアップを定期的に適用して、PDBの最終的なトランスポートを実行するまで、ベース・バックアップをロール・フォワードできます。

ソースPDBがオープンしている間は、ソースPDBのレベル1増分バックアップを作成してから、宛先CDBでリストア操作を実行できます。この方法を使用すると、アプリケーションの停止時間を最小限に抑え、PDBの最終的なトランスポートを実行する際に宛先データベースに適用する必要がある変更データの量を削減できます。

この手順の繰返し可能な回数に制限はありません。PDBの最終的なトランスポートの実行準備ができたら、「ステップ4: (ソースCDB) NOCATALOGモードでのPDBの最終的な増分バックアップの作成」に進みます。

NOCATALOGモードでは、ソース・ホストにトランスポート・ファイルを作成し、トランスポート・ファイルを使用して、宛先ホストでリストア操作を実行する必要があります。

ソースCDBで、PDBのレベル1の増分バックアップを作成します。

  1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
  2. ソースCDBで、BACKUP PLUGGABLE DATABASEコマンドを使用してPDBの増分レベル1のバックアップを作成します。

    次の文は、PDB sales_pdbの増分レベル1のバックアップを作成します。

    RMAN> BACKUP
    INCREMENTAL LEVEL 1
    PLUGGABLE DATABASE sales_pdb;
  3. ソースPDBで、RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。トランスポート・ファイルは、トランスポートするPDBに対応したバックアップについての情報を格納するために作成したXMLファイルです。
    次の文は、hr_pdb_transportfile.xmlという名前のトランスポート・ファイルを作成します
    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/sales_pdb_transportfile.xml'
    PLUGGABLE DATABASE sales_pdb;
  4. オペレーティング・システム固有のユーティリティを使用して、トランスポート・ファイルをソース・ホストから宛先ホストに手動でコピーします。または、トランスポート・ファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。

宛先CDBで、PDBバックアップからデータファイルをリストアします

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  2. 宛先CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  3. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT FILE句を指定してRESTOREコマンドを実行します。

    次の例では、RMANはソースPDB sales_pdbの増分レベル1のバックアップを適用することで、以前にリストアしたデータファイルをロールフォワードします。増分レベル1のバックアップが複数作成されていると、RMANはソースPDBで作成された順序と同じ順序で増分バックアップを適用します。

    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE sales_pdb
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/hr_pdb_transportfile.xml';
28.3.4.4 ステップ4: (ソースCDB) NOCATALOGモードでのPDBの最終的な増分バックアップの作成

この手順は、最終的な増分レベル1のバックアップと、そのバックアップに付随するエクスポート・ダンプ・ファイルを作成して、最終的なトランスポートのためにソースPDBを準備する場合に使用します。

  1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
  2. 宛先CDBにトランスポートするPDBをクローズします。

    次のコマンドは、PDB sales_pdbをクローズします。

    RMAN> ALTER PLUGGABLE DATABASE sales_pdb CLOSE IMMEDIATE;
  3. PDBの最終増分レベル1バックアップを作成し、ソースCDBからPDBを切断します。

    次の文は、PDB sales_pdbの増分レベル1のバックアップを作成し、アンプラグ・バックアップも作成します。

    RMAN> BACKUP 
    UNPLUG INTO '/tmp/pdb_dumpfiles/sales_pdb_unplug.xml'
    INCREMENTAL LEVEL 1
    PLUGGABLE DATABASE sales_pdb
    XML BACKUP FORMAT '/tmp/pdb_backup/sales_pdb_unplug.bck'
    TAG 'sales_pdb_plugin_tag';
  4. RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。トランスポート・ファイルは、トランスポートするPDBに対応したバックアップについての情報を格納するXMLファイルです。
    次の文は、sales_pdb_transportfile.xmlという名前のトランスポート・ファイルを作成します
    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/sales_pdb_transportfile.xml'
    PLUGIN TAG 'sales_pdb_plugin_tag'
    PLUGGABLE DATABASE sales_pdb;
  5. オペレーティング・システム固有のユーティリティを使用して、トランスポート・ファイルをソース・ホストから宛先ホストに手動でコピーします。または、トランスポート・ファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。
28.3.4.5 ステップ5: (宛先CDB) NOCATALOGモードでのPDBの最終的なトランスポートの実行

最後のステップとして、トランスポート・ファイルを使用してPDBバックアップからデータファイルをリストアし、宛先CDBにPDBをプラグインします。

オペレーティング・システム・ユーティリティを使用して、トランスポートXMLファイルをネットワーク・ファイル・システム(NFS)または宛先CDBからアクセスできる共有の場所にコピーします。
  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します。
  2. 宛先CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  3. FOREIGN PLUGGABLE DATABASE句およびFROM TRANSPORT FILE句を指定してRESTOREコマンドを実行します。RMANは、最終的な増分レベル1のバックアップからデータファイルをリストアし、ロールフォワードして、宛先CDBのPDBをプラグインします。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE sales_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT FILE '/tmp/xplat_backups/sales_pdb_transportfile.xml'
    バックアップおよび以前のリリースのOracle Databaseで作成されたPDBアンプラグXMLファイルを使用してPDBをトランスポートする場合、RESTOREコマンドを実行するときに次を含める必要があります:
    • RMANでアンプラグXMLファイルをリストアする必要があることを指定するXMLFILE句。
    • PDBアンプラグXMLファイルを抽出して保存する宛先データベース上のディレクトリを指定するXMLFILE DESTINATION句。
    • PDBアンプラグXMLファイルが含まれるバックアップ・セットの名前を指定するFROM BACKUPSET句。
    RMAN> RESTORE
    FOREIGN PLUGGABLE DATABASE hr_pdb 
    FORMAT '/oradata/%U' 
    FROM TRANSPORT FILE '/tmp/xplat_backups/hr_pdb_transportfile.xml'
    XMLFILE 'hr_pdb_unplug.xml' XMLFILE DESTINATION '/tmp/xplat_backups/'
    FROM BACKUPSET 'hr_pdb_unplug.bck';

    この例では、バックアップ・セットhr_pdb_unplug.bckからアンプラグXMLファイルhr_pdb_unplug.xmlを抽出するための場所として/tmp/xplat_backups/が指定されています。

28.4 ネットワーク経由でのプラガブル・データベースのトランスポート

RMANを使用すると、プラットフォーム間でネットワークを使用したプラガブル・データベースのトランスポートが可能になります。

28.4.1 ネットワーク経由のPDBのトランスポートについて

RMANでは、ネットワークを使用してソースPDBに接続し、PDBのバックアップを作成し、ネットワーク経由でソース・データファイルを最適に転送してから、宛先CDBでバックアップからデータファイルをリストアできます。さらに、RMANは宛先CDBのPDBをプラグインします。

ネットワーク経由でPDBをトランスポートするために、RMANはRESTOREコマンドをFROM SERVICE句、FOREIGN PLUGGABLE DATABASE句およびPLUGIN DBLINK句とともに使用します。

RECOVERコマンドを使用して、宛先CDBのPDBの増分バックアップを定期的にロールフォワードします。最終的な増分バックアップをロールフォワードして宛先CDBのPDBをプラグインする最終ステップを実行するまでは、ソースPDBをオープンした状態で動作させておくことができます。

次に、ソース・プラットフォームから宛先プラットフォームにネットワーク経由でPDBをトランスポートするための主要なステップを示します。

宛先データベースの場合:
  • RESTOREコマンドをFOREIGN PLUGGABLE DATABASE句およびFROM SERVICE句とともに実行します。RMANは、ソースPDBの増分レベル0のバックアップを転送し、宛先CDBでデータファイルをリストアします。
  • オプションで、RECOVERコマンドをFOREIGN PLUGGABLE DATABASE句およびFROM SERVICE句とともに実行できます。RMANは、宛先CDBでソースPDBの増分レベル1のバックアップを適用し、PDBのバックアップをロールフォワードします。
  • 宛先CDBでPDBの最終的なリストアを実行する前に、宛先CDBでSQL*PLUSを使用してデータベース・リンクまたはdblinkを作成する必要があります。dblinkは、RMANがソース・ホストから宛先ホストにエクスポート・ダンプ・ファイルまたはPDBアンプラグ・ファイルをトランスポートするために必要になります。
  • ソースPDBが読取り専用モードの場合は、RECOVERコマンドをFOREIGN PLUGGABLE DATABASE句、FROM SERVICE句およびPLUGIN DBLINK句とともに使用して、PDBの最終的な増分バックアップを使用してデータファイルをリカバリし、宛先CDBのPDBをプラグインします。

ノート:

宛先データベースでOracle Active Data Guardの論理データベース・ローリング・アップグレード・プロセスが実行中の場合、RMANはバックアップを使用したデータのトランスポートに関連する最終ステップを正常に完了できなくなります。この理由は、ローリング・アップグレード・プロセスが、RMANによる最終的なバックアップのリストアと宛先CDBへのPDBのプラグインに必要なバックアップ・メタデータのインポートを制限するためです。

28.4.2 ネットワーク経由でのプラガブル・データベースの迅速なトランスポート

ネットワーク経由でPDBのレベル0のバックアップからデータファイルをリストアしてPDBをトランスポートします。この方法は、バックアップにかかる時間が短い小規模なPDBをトランスポートする場合にお薦めします。

  1. 次のステップをソースCDBで実行します。
    1. SYSDBA権限またはSYSBACKUP権限を持つユーザーとしてrootに接続します。
    2. 宛先データベースにトランスポートするPDBをクローズします。
      次の文では、hr_pdbというPDBをクローズします。
      RMAN> ALTER PLUGGABLE DATABASE hr_pdb CLOSE IMMEDIATE;
  2. 次のステップを宛先データベースで実行します。
    1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先CDBに接続します
    2. CDBが読取り/書込みモードでオープンされていることを確認します。
      次のコマンドでは、CDBの現在のモードが表示されます。
      RMAN> SELECT open_mode FROM V$DATABASE;
    3. 最終的なリストア操作を実行する前に、宛先CDBでSQL*PLUSを使用してデータベース・リンクを作成します。ネットワークベースのトランスポート方法では、dblinkは、ソース・データベースから宛先データベースにエクスポート・ダンプ・ファイルまたはPDBアンプラグXMLファイルをトランスポートするために使用されます。

      SQL*PLUS CREATE DATABASE LINK文を使用してPUBLIC dblinkを作成します。

      たとえば、次の文では、宛先データベースのユーザーrcoが、CDB cdb1のプラガブル・データベースpdb1を参照するhrpdbpluginlinkというデータベース・リンクを定義しています。
      CREATE PUBLIC DATABASE LINK hrpdbpluginlink CONNECT TO rco IDENTIFIED BY password USING 'cdb1_pdb1'
    4. RMANがソースCDBに接続し、ネットワーク経由で宛先ホストにデータファイルを転送してから、宛先CDBにデータファイルをリストアできるようにする単一のリストア操作を実行します。さらに、RMANは宛先CDBにPDBをプラグインします。
      FOREIGN PLUGGABLE DATABASEコマンドを使用して、ソース・データベース上のPDBの名前を指定します。
      FROM SERVICE句を使用して、ソースCDBのサービス名を指定します。
      オプションで、PLUGIN FILE句を使用してファイル名と場所を指定し、PDBがソースCDBから切断されたときにPDBの構造メタデータがその場所に保存されるようにします。
      PLUGIN DBLINK句を使用して宛先データベースにアクセスするデータベース・リンクを指定します。
      次の文は、サービス名source_dbのソース・データベースから、PDB hr_pdbのレベル0のバックアップからデータファイルをリストアします。PLUGIN FILE句は、PDBの構造メタデータを/tmp/pdb_dumpfiles/hr_pdb_metadata.xmlの場所に格納する必要があることを指定しています。PLUGIN DBLINKは、宛先データベースで作成したデータベース・リンクhrpdbpluginlinkを指定します。
      RMAN> RESTORE 
      FOREIGN PLUGGABLE DATABASE 'hr_pdb' 
      FORMAT 'hrpdb%f.f' 
      FROM SERVICE 'source_db' 
      PLUGIN FILE '/tmp/pdb_dumpfiles/hr_pdb_metadata.xml'
      PLUGIN DBLINK 'hrpdbpluginlink';

28.4.3 ネットワーク経由でのバックアップの増分的なリストアによるプラガブル・データベースのトランスポート

ネットワークを使用して、PDBのレベル0のバックアップからデータファイルをリストアし、リストアされたデータファイルを宛先CDBでリカバリします。

  1. RMANを開いて、SYSDBA権限またはSYSBACKUP権限を持つユーザーとして、宛先データベースにTARGETとして接続します。
  2. 宛先CDBが読取り/書込みモードでオープンされていることを確認します。
    次のコマンドでは、CDBの現在のモードが表示されます。
    RMAN> SELECT open_mode FROM V$DATABASE;
  3. 宛先CDBで、リストア操作を実行します。RMANは、ソースPDBのレベル0のバックアップからデータファイルをリストアします。
    RMANは、ソースCDBに接続し、必要なバックアップを作成し、データファイルをネットワーク経由で宛先ホストに転送し、宛先CDBでデータファイルをリストアします。最初のバックアップは常に増分レベル0のバックアップであり、それに続く増分レベル1のバックアップを適用するベースとして機能します。
    RESTOREコマンドをFOREIGN PLUGGABLE DATABASE句とともに実行して、ソースPDBの名前を指定します。
    FROM SERVICE句を使用して、ソースCDBのサービス名を指定します。
    次の文は、サービス名source_dbのソース・データベースから、PDB hr_pdbのデータファイルをリストアします。
    RMAN> RESTORE 
    FOREIGN PLUGGABLE DATABASE 'hr_pdb' 
    FORMAT 'hr_pdb%f.f' 
    FROM SERVICE 'source_db'; 
    

ソースPDBがオープンしている間は、宛先CDBでリカバリ操作を定期的に実行できます。RECOVERコマンドを使用すると、RMANはソースPDBの増分レベル1のバックアップを適用して、以前にリストアしたデータファイルをロールフォワードできます。PDBの最終的なトランスポートを実行するまで、リカバリ操作は回数の制限なしに実行できます。

  1. RECOVERコマンドをFOREIGN PLUGGABLE DATABASE句とともに実行して、ソース・データベースでのPDBの名前を指定します。
    FROM SERVICE句を使用して、ソースCDBのサービス名を指定します。
    次の文は、サービス名source_dbのソース・データベースから、PDB hr_pdbのデータファイルをリカバリします。
    RMAN> RECOVER 
    FOREIGN PLUGGABLE DATABASE 'hr_pdb' 
    FORMAT 'pdb1%f.f' 
    FROM SERVICE 'source_db';
  2. 最終的なリカバリ操作を実行する前に、宛先CDBでSQL*Plusを使用してデータベース・リンクを作成します。ネットワークベースのトランスポート方法では、dblinkは、RMANがソース・データベースから宛先データベースにエクスポート・ダンプ・ファイルまたはPDBアンプラグXMLファイルをトランスポートするために必要です。

    SQL*PLUS CREATE DATABASE LINK文を使用してPUBLIC dblinkを作成します。

    たとえば、次の文では、宛先データベースのユーザーrcoが、CDB cdb1のプラガブル・データベースpdb1を参照するhrpdbpluginlinkというデータベース・リンクを定義しています。
    CREATE PUBLIC DATABASE LINK hrpdbpluginlink CONNECT TO rco IDENTIFIED BY password USING 'cdb1_pdb1'
  3. ソースPDBが読取り専用モードの場合、PDBの最終的な増分バックアップを使用してデータファイルをリカバリし、宛先CDBにPDBをプラグインできます。
    RECOVERコマンドをFOREIGN PLUGGABLE DATABASE句とともに実行して、ソースPDBの名前を指定します。
    FROM SERVICE句を使用して、ソースCDBのサービス名を指定します。
    オプションで、PLUGIN FILE句を使用してファイル名と場所を指定し、PDBがソースCDBから切断されたときにPDBの構造メタデータがその場所に保存されるようにします。
    PLUGIN DBLINK句を使用して宛先データベースへのアクセスに必要なデータベース・リンクを指定します。
    次の文は、サービス名source_dbのソース・データベースから、PDB hr_pdbの最終的な増分レベル1のバックアップからデータファイルをリカバリします。PLUGIN FILE句は、PDBの構造メタデータを/tmp/pdb_dumpfiles/hr_pdb_metadata.xmlの場所に格納する必要があることを指定しています。PLUGIN DBLINKは、宛先データベースで作成したデータベース・リンクhrpdbpluginlinkを指定します。
    RMAN> RECOVER 
    FOREIGN PLUGGABLE DATABASE 'hr_pdb' 
    FORMAT 'hrpdb%f.f' 
    FROM SERVICE 'source_db' 
    PLUGIN FILE '/tmp/pdb_dumpfiles/hr_pdb_metadata.xml'
    PLUGIN DBLINK 'hrpdbpluginlink'; 
    
    RMANはソースCDBに接続し、ネットワーク経由で宛先CDBにデータファイルを転送し、最終的な増分バックアップからデータファイルをリカバリして、宛先CDBにPDBをプラグインします。

28.5 リカバリ・カタログ接続を使用した表領域のトランスポート

RMANがリカバリ・カタログに接続されているときに、表領域のバックアップを使用して表領域をトランスポートできる様々な方法について説明します。

28.5.1 リカバリ・カタログを使用した表領域のトランスポートについて

RMANがリカバリ・カタログに接続されている場合、RMANは表領域のバックアップからデータファイルをリストアすることで表領域をトランスポートできます。

RMANは、リカバリ・カタログに格納されているメタデータを問い合せて、宛先データベースでのリストア操作に必要になる正確なバックアップを判断します。

次に、RMANがリカバリ・カタログに接続されているときに表領域をトランスポートする場合に実行する主要なステップを示します。

ソース・データベースの場合:
  • RMANをリカバリ・カタログに接続します
  • 表領域の既存のバックアップを使用するか、BACKUP TABLESPACEコマンドを使用して新しいバックアップを作成します
  • 表領域が読取り専用モードの場合は表領域の最終的な増分レベル1のバックアップを作成します。
    • BACKUP TABLESPACEコマンドを使用して、最終的な増分レベル1のバックアップを作成します
    • DATAPUMP句を使用して、増分バックアップに付随するエクスポート・ダンプ・ファイルを作成します

宛先データベースの場合:

  • RMANをソース・データベースと同じリカバリ・カタログに接続します
  • SETコマンドをFOREIGN DBID句とともに使用して、ソースPDBのDBIDを設定します
  • RESTOREコマンドをPREVIEW句およびTO TRANSPORT LIST句とともに使用して、トランスポート・リストを生成します。トランスポート・リストはインメモリーに維持され、RMANが宛先データベースでリストア操作を実行するために必要な表領域のバックアップを示します
  • RESTOREコマンドをFROM TRANSPORT LIST句とともに使用して、トランスポート・リストを使用したリストア操作を実行します。RMANは、表領域のバックアップからデータファイルをリストアし、宛先データベースの表領域をプラグインします。

ノート:

宛先データベースでOracle Active Data Guardの論理データベース・ローリング・アップグレード・プロセスが実行中の場合、RMANはバックアップを使用したデータのトランスポートに関連する最終ステップを正常に完了できなくなります。この理由は、ローリング・アップグレード・プロセスが、RMANによる最終的なバックアップのリストアと宛先データベースへの表領域またはPDBのプラグインに必要なバックアップ・メタデータのインポートを制限するためです。

28.5.2 リカバリ・カタログ接続を使用した表領域の迅速なトランスポート

この方法は、バックアップにかかる時間が短い小規模な表領域をトランスポートする場合にお薦めします。

このクイック・トランスポートの方法では、ソース表領域の増分レベル0のバックアップと、そのバックアップに付随するエクスポート・ダンプ・ファイルを作成します。その後で、表領域のバックアップからデータファイルをリストアして、宛先データベースの表領域をプラグインします。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.5.2.1 ソース・データベース: リカバリ・カタログ接続を使用した表領域の迅速なトランスポートの準備

ソース表領域が読取り専用モードの場合は、増分レベル0のバックアップと、そのバックアップに付随するエクスポート・ダンプ・ファイルを作成します。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。

    ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。

    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限が付与されているユーザーです。

    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    

    sbuユーザーのパスワードを要求された場合は入力します。

  2. リカバリ・カタログに接続します。
  3. 表領域を読取り専用モードにします。

    次のコマンドは、表領域mf_tbsを読取り専用モードにします。

    ALTER TABLESPACE mf_tbs READ ONLY;
    
  4. BACKUP TABLESPACEコマンドを使用して、宛先プラットフォームにトランスポートする表領域の増分レベル0のバックアップを作成します。
    DATAPUMP句を使用して、エクスポート・ダンプ・ファイルを作成する必要があることを指定します。エクスポート・ダンプ・ファイルには、宛先データベースに表領域を接続するために必要なメタデータが含まれます。

    次の文は、表領域mf_tbsの増分レベル0のバックアップとエクスポート・ダンプ・ファイルを作成します。

    RMAN> BACKUP
    INCREMENTAL LEVEL 0
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/mf_tbs_incr.bck'
    DATAPUMP BACKUP FORMAT 'pump.dmp'
    TAG 'mf_plugin_tag';
    

    この例では、mf_tbs_incr.bckファイルに増分バックアップをします。pump.dmpファイルには、エクスポート・ダンプ・ファイルのバックアップを格納します。

  5. RMANによって表示されたソースDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=699892390)
28.5.2.2 宛先データベース: リカバリ・カタログ接続を使用した表領域のリストアとプラグイン

RMANがリカバリ・カタログに接続されているときに、宛先データベースに表領域をすばやくトランスポートするために必要な最終ステップを実行します。

  1. リカバリ・カタログに接続します。
  2. SETコマンドをFOREIGN DBIDオプションとともに使用して、リストア操作に使用する表領域バックアップを含むソース・データベースのデータベース識別子またはDBIDを指定します。
    次のコマンドは、外部DBIDを699892390に設定します。これは、バックアップがリストアされる表領域mf_tbsを含むソース・データベースのDBIDです。
    RMAN> SET FOREIGN DBID 699892390;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT LIST句とともに使用して、RMANでリストア操作に必要なバックアップのインメモリー・リストを作成します。RESTORE PREVIEW操作の結果はメモリー内に残ります。
    PLUGIN TAGを使用して、ソース・ホストに作成されるデータ・ポンプ・エクスポート・ダンプ・ファイルのバックアップに適用されるタグを指定します。リストア操作中に、RMANは指定されたタグを使用して、宛先ホストに転送する必要がある表領域に対応するメタデータを一意に識別します。
    表領域名を指定するには、TABLESPACEコマンドを使用します。
    次の例では、ソース表領域mf_tbsのバックアップを使用して、インメモリー・トランスポート・リストを作成します。RMANは、宛先ホストでデータファイルをリストアするためにトランスポート・リストを必要とします。
    RMAN> RESTORE PREVIEW
    TO TRANSPORT LIST
    PLUGIN TAG 'mf_plugin_tag'
    TABLESPACE mf_tbs;
  2. このコマンドを実行して、外部データベースIDの現在の設定をクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  4. FOREIGN TABLESPACEオプションおよびTO TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT LIST;
    RMANは、表領域mf_tbsのレベル0のバックアップからデータファイルをリストアし、宛先データベースの表領域をプラグインします。

28.5.3 既存の表領域のバックアップとリカバリ・カタログを使用した表領域のトランスポート

RMANでは、通常のバックアップ・スケジュールの一部として使用可能な既存の表領域バックアップを利用して表領域を簡単にトランスポートできます。

ソース表領域が読取り専用モードの場合、表領域の最終的な増分レベル1のバックアップと、その増分バックアップに付随するエクスポート・ダンプ・ファイルを作成できます。

宛先データベースでは、単一のリストア操作を実行して表領域をトランスポートできます。RMANは、最初に表領域の既存のレベル0のバックアップからデータファイルをリストアします。同じリストア操作中に、RMANは最終的な増分レベル1のバックアップを適用してリストアしたデータファイルをロールフォワードし、宛先データベースの表領域をプラグインします。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.5.3.1 ソース・データベース: 既存のバックアップとリカバリ・カタログを使用した表領域のトランスポートの準備

表領域の最新のバックアップを使用して、宛先データベースに表領域をトランスポートします。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。

    ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。

    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限が付与されているユーザーです。

    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    

    sbuユーザーのパスワードを要求された場合は入力します。

  2. リカバリ・カタログに接続します。
  3. 表領域を読取り専用モードにします。

    次のコマンドは、表領域mf_tbsを読取り専用モードにします。

    ALTER TABLESPACE mf_tbs READ ONLY;
    
  4. 宛先プラットフォームにトランスポートする表領域の最終的な増分レベル1のバックアップを作成します。
    DATAPUMP句を使用して、表領域バックアップに付随するエクスポート・ダンプ・ファイルを生成します。エクスポート・ダンプ・ファイルには、宛先データベースのリストアされた表領域をプラグインするために必要なメタデータが含まれます。

    次の文では、表領域mf_tbsの増分レベル1のバックアップとエクスポート・ダンプ・ファイルを作成します。

    RMAN> BACKUP
    INCREMENTAL LEVEL 1
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/mf_tbs_incr.bck'
    DATAPUMP BACKUP FORMAT 'pump.dmp'
    TAG 'mf_plugin_tag';
    

    この例では、mf_tbs_incr.bckファイルに増分バックアップをします。pump.dmpファイルには、エクスポート・ダンプ・ファイルのバックアップを格納します。

  5. RMANによって表示されたソースDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=699892390)
28.5.3.2 宛先データベース: リカバリ・カタログを使用したバックアップのリストアと表領域のプラグイン

単一のリストア操作を実行して、既存のバックアップからデータファイルをリストアし、宛先データベースに表領域をプラグインします。

  1. リカバリ・カタログに接続します。
  2. SETコマンドをFOREIGN DBIDオプションとともに使用して、リストア操作に使用する表領域バックアップを含むソース・データベースのデータベース識別子またはDBIDを指定します。
    次のコマンドは、外部DBIDを699892390に設定します。これは、バックアップがリストアされる表領域mf_tbsを含むソース・データベースのDBIDです。
    RMAN> SET FOREIGN DBID 699892390;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT LISTオプションとともに使用して、リストア操作でRMANによって使用されるバックアップのインメモリー・リストを作成します。RESTORE PREVIEW操作の結果はメモリー内に残ります。
    PLUGIN TAGを使用して、ソース・ホストに作成されるデータ・ポンプ・エクスポート・ダンプ・ファイルのバックアップに適用されるタグを指定します。リストア操作中に、RMANは指定されたタグを使用して、宛先ホストに転送する必要がある表領域に対応するメタデータを一意に識別します。
    表領域名を指定するには、TABLESPACEコマンドを使用します。
    次の例では、RMANが宛先ホスト上の表領域mf_tbsをリストアするために使用するバックアップのインメモリー・トランスポート・リストを作成します。
    RMAN> RESTORE PREVIEW
    TO TRANSPORT LIST
    PLUGIN TAG 'mf_plugin_tag'
    FOREIGN TABLESPACE mf_tbs;
  2. このコマンドを実行して、外部データベースIDをクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  4. FOREIGN TABLESPACEオプションおよびTO TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT LIST;
    RMANは、表領域の既存のレベル0のバックアップからデータファイルをリストアし、増分レベル1のバックアップを適用することでリストアしたデータファイルをロールフォワードしてから、宛先データベースの表領域をプラグインします。

28.5.4 複数の増分バックアップとリカバリ・カタログを使用した表領域のトランスポート

この方法は、大きな表領域をプラットフォーム間でトランスポートする場合にお薦めします。

宛先データベースでは、最初に表領域の既存のバックアップまたは新しいバックアップからデータファイルをリストアする必要があります。その後、リストアしたデータファイルは、複数の増分レベル1のバックアップを定期的に適用することでロールフォワードできます。ソース表領域は、宛先データベースで任意の数の増分レベル1のバックアップを適用している間、書込み用にオープンした状態を維持できます。アプリケーションの停止時間は、最終的な増分バックアップを作成する場合にのみ始まります。

この方法は、大規模な表領域のトランスポート時にデータベースの可用性を向上するために役立ちます。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.5.4.1 ソース・データベース: ベース増分バックアップの作成による表領域のトランスポートの準備

RMANは、最初に宛先データベースで表領域のレベル0のバックアップをリストアすることを必要とします。レベル0のバックアップは、それに続くレベル1の増分バックアップの基礎として機能します。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。

    ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。

    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限が付与されているユーザーです。

    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    

    sbuユーザーのパスワードを要求された場合は入力します。

  2. リカバリ・カタログに接続します。
  3. 次のいずれかのステップを実行します。
    • 表領域の既存のレベル0のバックアップを利用する場合は、レベル0のバックアップの作成以降に表領域で発生した直近のすべての変更を含めるために、増分レベル1のバックアップを作成します。

      次の文は、表領域mf_tbsの増分レベル1のバックアップを作成します。

      RMAN> BACKUP
      INCREMENTAL LEVEL 1
      TABLESPACE 'mf_tbs';
    • または、表領域のレベル0のバックアップを作成します。

      次の文は、表領域mf_tbsの増分レベル0のバックアップを作成します。

      RMAN> BACKUP
      INCREMENTAL LEVEL 1
      TABLESPACE 'mf_tbs';
  4. RMANによって表示されたソースDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=699892390)
28.5.4.2 宛先データベース: リカバリ・カタログを使用した表領域のベース増分レベル0のバックアップからのデータファイルのリストア

宛先データベースで、ソース・データベースで作成した表領域のレベル0増分バックアップからデータファイルをリストアします。レベル0のバックアップは、それに続く表領域の増分レベル1のバックアップでデータファイルをロールフォワードするためのRMANの基礎として機能します。

  1. リカバリ・カタログに接続します。
  2. SETコマンドをFOREIGN DBIDオプションとともに使用して、リストア操作に使用する表領域バックアップを含むソース・データベースのデータベース識別子またはDBIDを指定します。
    次のコマンドは、外部DBIDを699892390に設定します。これは、バックアップがリストアされる表領域mf_tbsを含むソース・データベースのDBIDです。
    RMAN> SET FOREIGN DBID 699892390;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT LISTオプションとともに使用して、リストア操作でRMANによって使用されるバックアップのインメモリー・リストを作成します。RESTORE PREVIEW操作の結果はメモリー内に残ります。
    表領域名を指定するには、TABLESPACEコマンドを使用します。
    次の例では、RMANが宛先ホスト上の表領域mf_tbsをリストアするために使用するバックアップのインメモリー・トランスポート・リストを作成します。
    RMAN> RESTORE PREVIEW
    TO TRANSPORT LIST
    FOREIGN TABLESPACE mf_tbs;
  2. このコマンドを実行して、外部データベースIDをクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  4. FOREIGN TABLESPACEオプションおよびTO TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FROM TRANSPORT LIST;
    RMANは、最初に表領域のレベル0のバックアップからデータファイルをリストアしてから、増分レベル1のバックアップを適用することでデータファイルをロールフォワードします。
28.5.4.3 リカバリ・カタログを使用した表領域の増分バックアップの作成とリストア

宛先データベースでは、以前にリストアしたデータファイルを定期的にロールフォワードして、ソース表領域とのデータの同期状態を維持できます。

表領域が読取り/書込みモードのときに増分バックアップを頻繁に実行しておくと、表領域が読取り専用のときに作成する最後の増分バックアップを使用して宛先データベースに適用する必要のある変更データの量が減少するため、便利です。宛先データベースで適用できる増分レベル1のバックアップの数には制限がありません。

ソース・データベースで、表領域の増分レベル1のバックアップを作成します。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。

    ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。

    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限が付与されているユーザーです。

    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    

    sbuユーザーのパスワードを要求された場合は入力します。

  2. リカバリ・カタログに接続します。
  3. ソース・データベースで、INCREMENTAL LEVEL 1句をBACKUP TABLESPACEコマンドで使用して、宛先プラットフォームにトランスポートする表領域の増分レベル1のバックアップを作成します。

    次の文は、表領域mf_tbsの増分レベル1のバックアップを作成します。

    RMAN> BACKUP
    INCREMENTAL LEVEL 1
    TABLESPACE mf_tbs;
  4. RMANによって表示されたソースDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=699892390)

宛先データベースで、表領域の増分レベル1のバックアップを使用してデータファイルをリストアします

  1. リカバリ・カタログに接続します。
  2. SETコマンドをFOREIGN DBIDオプションとともに使用して、リストア操作に使用する表領域バックアップを含むソース・データベースのデータベース識別子またはDBIDを指定します。
    次のコマンドは、外部DBIDを699892390に設定します。これは、バックアップがリストアされる表領域mf_tbsを含むソース・データベースのDBIDです。
    RMAN> SET FOREIGN DBID 699892390;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT LISTオプションとともに使用して、リストア操作でRMANによって使用されるバックアップのインメモリー・リストを作成します。RESTORE PREVIEW操作の結果はメモリー内に残ります。
    表領域名を指定するには、TABLESPACEコマンドを使用します。
    次の例では、RMANが宛先ホスト上の表領域mf_tbsをリストアするために使用するバックアップのインメモリー・トランスポート・リストを作成します。
    RMAN> RESTORE PREVIEW
    TO TRANSPORT LIST
    FOREIGN TABLESPACE mf_tbs;
  2. このコマンドを実行して、外部データベースIDをクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  4. FOREIGN TABLESPACEオプションおよびTO TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FROM TRANSPORT LIST;
    RMANは、表領域mf_tbsの増分レベル1のバックアップを適用することで、以前にリストアしたデータファイルをロールフォワードします。
28.5.4.4 ソース・データベース: リカバリ・カタログを使用した表領域の最終的な増分バックアップの作成

RMANがリカバリ・カタログに接続されているときに、宛先データベースへの最終的なトランスポートのための表領域を準備します。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。

    ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。

    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限が付与されているユーザーです。

    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    

    sbuユーザーのパスワードを要求された場合は入力します。

  2. リカバリ・カタログに接続します。
  3. トランスポートする表領域を読取り専用モードに設定します。
    次のコマンドは、表領域mf_tbsを読取り専用モードにします。
    ALTER TABLESPACE mf_tbs READ ONLY;
  4. 宛先プラットフォームにトランスポートする表領域の最終的な増分レベル1のバックアップを作成します。
    DATAPUMP句を使用してエクスポート・ダンプ・ファイルを生成します。エクスポート・ダンプ・ファイルには、宛先データベースの表領域をプラグインするために必要なメタデータが含まれています。

    次の文では、表領域mf_tbsの増分レベル1のバックアップとエクスポート・ダンプ・ファイルを作成します。

    RMAN> BACKUP
    INCREMENTAL LEVEL 1
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/my_tbs_incr.bck'
    DATAPUMP BACKUP FORMAT 'pump.dmp'
    TAG 'mf_plugin_tag';
    
  5. RMANによって表示されたソースDBIDをメモします。
    たとえば、RMANは、オープンしているターゲット・データベースに接続した場合、次の形式の行を出力します。
    connected to target database: PROD (DBID=699892390)
28.5.4.5 宛先データベース: リカバリ・カタログを使用した表領域の最終的なトランスポートの実行

RMANがリカバリ・カタログに接続されているときに、表領域の最終的な増分バックアップからデータファイルをリストアしてから、リストアした表領域を宛先データベースにプラグインします。

  1. リカバリ・カタログに接続します。
  2. SETコマンドをFOREIGN DBIDオプションとともに使用して、リストア操作に使用する表領域バックアップを含むソース・データベースのデータベース識別子またはDBIDを指定します。
    次のコマンドは、外部DBIDを699892390に設定します。これは、バックアップがリストアされる表領域mf_tbsを含むソース・データベースのDBIDです。
    RMAN> SET FOREIGN DBID 699892390;

単一のRMANセッションでこれらのステップを実行し、リストア操作中にRMANでインメモリー・トランスポート・リストを使用できるようにします。

  1. RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT LISTオプションとともに使用して、リストア操作でRMANによって使用されるバックアップのインメモリー・リストを作成します。RESTORE PREVIEW操作の結果はメモリー内に残ります。
    PLUGIN TAGを使用して、ソース・ホストに作成されるデータ・ポンプ・エクスポート・ダンプ・ファイルのバックアップに適用されるタグを指定します。リストア操作中に、RMANは指定されたタグを使用して、宛先ホストに転送する必要がある表領域に対応するメタデータを一意に識別します。
    表領域名を指定するには、TABLESPACEコマンドを使用します。
    次の例では、RMANが宛先ホスト上の表領域mf_tbsをリストアするために使用するバックアップのインメモリー・トランスポート・リストを作成します。
    RMAN> RESTORE PREVIEW
    TO TRANSPORT LIST
    PLUGIN TAG 'mf_plugin_tag'
    FOREIGN TABLESPACE mf_tbs;
  2. このコマンドを実行して、外部データベースIDをクリアします。
    RMAN> SET FOREIGN DBID CLEAR;
  3. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  4. FOREIGN TABLESPACEオプションおよびTO TRANSPORT LIST句を指定してRESTOREコマンドを実行します。
    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT LIST;
    RMANは、最終的な増分レベル1のバックアップからファイルをリストアし、宛先データベースの表領域をプラグインします。

28.6 NOCATALOGモードでの表領域のトランスポート

NOCATALOGモードでは、トランスポート・ファイルを作成して、ソース表領域のバックアップに関する情報を格納する必要があります。表領域のバックアップとトランスポート・ファイルを使用して表領域を転送する様々な方法について説明します。

28.6.1 NOCATALOGモードでのプラットフォーム間の表領域のトランスポートについて

表領域のバックアップを使用して表領域をトランスポートする場合、RMANはソース表領域からの正確なバックアップを識別してから、宛先データベースでリストア操作を実行する必要があります。NOCATALOGモードでは、ソース・データベース上にトランスポート・ファイルを作成する必要があります。トランスポート・ファイルは、バックアップ・メタデータを格納するXML形式のファイルです。RMANは、バックアップからデータファイルをリストアし、宛先データベースの表領域をプラグインするためにトランスポート・ファイルを必要とします。

NOCATALOGモードで表領域をトランスポートするための主要なステップは次のとおりです。

ソース・データベースの場合:
  • 表領域の既存のレベル0のバックアップを使用するか、BACKUP TABLESPACEコマンドを使用して新しいバックアップを作成します。
  • 表領域が読取り専用モードの場合は表領域の最終的な増分レベル1のバックアップを作成します。
    • BACKUP TABLESPACEコマンドを使用して、最終的な増分レベル1のバックアップを作成します。
    • DATAPUMP句を使用して、増分バックアップに付随するエクスポート・ダンプ・ファイルを作成します。
  • RESTORE PREVIEWコマンドをTO TRANSPORT FILE句とともに使用してトランスポートXMLファイルを作成します。
  • オペレーティング・システムのユーティリティを使用して、トランスポートXMLファイルをソース・ホストから宛先ホストに手動でコピーします。または、XMLファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。

宛先データベースで、ソース・データベースで作成したトランスポート・ファイルを使用して単一のリストア操作を実行します。

RESTOREコマンドを、FROM TRANSPORT FILE句およびFOREIGN TABLESPACE句を指定して使用します。RMANは、レベル0のバックアップからデータファイルをリストアし、増分レベル1のバックアップを適用することでデータファイルをロールフォワードしてから、宛先データベースの表領域をプラグインします。

ノート:

宛先データベースでOracle Active Data Guardの論理データベース・ローリング・アップグレード・プロセスが実行中の場合、RMANはバックアップを使用したデータのトランスポートに関連する最終ステップを正常に完了できなくなります。この理由は、ローリング・アップグレード・プロセスが、RMANによる最終的な増分バックアップのリストアと宛先データベースでの表領域のプラグインに必要なバックアップ・メタデータのインポートを制限するためです。

28.6.2 NOCATALOGモードでの表領域の迅速なトランスポート

宛先データベースで表領域のレベル0のバックアップからデータファイルをリストアすることで、表領域をすばやくトランスポートできます。

この方法は、バックアップにかかる時間が短い小規模な表領域をトランスポートする場合にお薦めします。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.6.2.1 ソースCDB: NOCATALOGモードでの表領域の迅速なトランスポートの準備

ソース・データベースで表領域のレベル0のバックアップとトランスポート・ファイルを作成して、表領域をすばやくトランスポートするための準備をします。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。
  2. ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。
    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限を付与されているユーザーです。
    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    sbuユーザーのパスワードを要求された場合は入力します。
  3. 表領域を読取り専用モードにします。

    次のコマンドは、表領域mf_tbsを読取り専用モードにします。

    ALTER TABLESPACE mf_tbs READ ONLY;
  4. BACKUP TABLESPACEコマンドを使用して、宛先データベースにトランスポートする表領域の増分レベル0のバックアップを作成します。
    DATAPUMP句を使用して、レベル0のバックアップに付随するエクスポート・ダンプ・ファイルを作成します。

    次の文は、表領域my_tbsの増分レベル1のバックアップとエクスポート・ダンプ・ファイルを作成します。

    RMAN> BACKUP 
    INCREMENTAL LEVEL 0
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/mf_tbs_incr.bck'
    DATAPUMP BACKUP FORMAT 'pump.bck'
    TAG 'mf_tbs_plugin_tag';
    この例では、mf_tbs_incr.bckファイルに増分バックアップをします。pump.dmpファイルには、エクスポート・ダンプ・ファイルのバックアップを格納します。
  5. ソース・データベースで、RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。トランスポート・ファイルには、表領域のバックアップ情報がXML形式で格納されています。

    次の文は、'mf_tbs_transportfile.xml'という名前のトランスポート・ファイルを作成します。プラグイン・タグmf_tbs_plugin_tagでは、表領域mf_tbsに対応するエクスポート・ダンプ・ファイルを識別します。

    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml'
    PLUGIN TAG 'mf_tbs_plugin_tag'
    TABLESPACE mf_tbs;
  6. オペレーティング・システム固有のユーティリティを使用して、トランスポート・ファイルをソース・データベースから宛先データベースに手動でコピーします。または、トランスポート・ファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。
28.6.2.2 宛先データベース: NOCATALOGモードでのデータファイルの迅速なリストアとプラグイン

トランスポート・ファイルを使用して、宛先データベースで表領域のレベル0のバックアップからデータファイルをリストアします。

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  2. RESTORE FOREIGN TABLESPACEコマンドをFROM TRANSPORT FILEオプション付きで実行し、表領域が含まれているソース・データベースで作成したトランスポート・ファイルを指定します。

    次の文は、表領域my_tbsのレベル0のバックアップからデータファイルをリストアし、宛先データベースの表領域をプラグインします。mf_tbs_transportfile.xmlファイルは、リストア操作に必要なバックアップ情報が含まれているトランスポート・ファイルです。

    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml';
    バックアップおよび以前のリリースのOracle Databaseで作成されたエクスポート・ダンプ・ファイル・バックアップを使用して表領域をトランスポートする場合、RESTOREコマンドを実行するときに次を含める必要があります:
    • 表領域のバックアップ中に作成されたエクスポート・ダンプ・ファイルをRMANでリストアする必要があることを指定するDUMP FILE句。

      エクスポート・ダンプ・ファイルを抽出して格納するディレクトリを指定するDATAPUMP DESTINATION句。

    • エクスポート・ダンプ・ファイルが含まれるバックアップ・セットの名前を指定するFROM BACKUPSET句。
    
    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml'
    DUMP FILE DATAPUMP DESTINATION '/tmp/xplat_backups/'
    FROM BACKUPSET 'mf_tbs_datapump.bck';

    この例では、バックアップ・セットmf_tbs_datapump.bckからダンプ・ファイルを抽出するための場所として/tmp/xplat_backups/が指定されています。

28.6.3 リカバリ・カタログなしで既存の表領域のバックアップを使用した表領域のトランスポート

RMANでは、通常のバックアップ・スケジュールの一部として使用可能な既存の表領域バックアップ(レベル0)を利用して表領域をトランスポートできます。

NOCATALOGモードでは、ソース・データベース上にトランスポート・ファイルを生成する必要があります。トランスポート・ファイルには、表領域のバックアップ情報がXML形式で格納されています。宛先データベースでは、RMANがトランスポート・ファイルを使用して、ソース・データベースで作成された表領域のバックアップからデータファイルをリストアします。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.6.3.1 ソース・データベース: NOCATALOGモードでの既存のバックアップを使用した表領域のトランスポートの準備

表領域の最新のレベル0のバックアップとソース・データベースのトランスポート・ファイルを使用して、表領域をトランスポートします。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。
  2. ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。
    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限を付与されているユーザーです。
    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    sbuユーザーのパスワードを要求された場合は入力します。
  3. 表領域を読取り専用モードにします。

    次のコマンドは、表領域mf_tbsを読取り専用モードにします。

    ALTER TABLESPACE mf_tbs READ ONLY;
  4. 表領域の最終的な増分レベル1のバックアップを作成します。
    DATAPUMP句を使用して、宛先ホストに表領域を接続するために必要なメタデータを含むエクスポート・ダンプ・ファイルを作成します。

    次の文は、表領域my_tbs の増分レベル1のバックアップを作成します。

    RMAN> BACKUP 
    INCREMENTAL LEVEL 1
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/my_tbs_incr.bck'
    DATAPUMP BACKUP FORMAT 'pump.bck'
    TAG 'mf_tbs_plugin_tag';
    この例では、mf_tbs_incr.bckファイルに増分バックアップをします。pump.dmpファイルには、エクスポート・ダンプ・ファイルのバックアップを格納します。
  5. ソース・データベースで、RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。

    次の文は、'mf_tbs_transportfile.xml'という名前のトランスポート・ファイルを作成します。プラグイン・タグmf_tbs_plugin_tagでは、表領域mf_tbsに対応するエクスポート・ダンプ・ファイルを識別します。

    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml'
    PLUGIN TAG 'mf_tbs_plugin_tag'
    TABLESPACE mf_tbs;
  6. オペレーティング・システム固有のユーティリティを使用して、トランスポート・ファイルをソース・データベースから宛先データベースに手動でコピーします。または、トランスポート・ファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。
28.6.3.2 宛先データベース: NOCATALOGモードでの既存のバックアップからのデータファイルのリストアと表領域のプラグイン

トランスポート・ファイルを使用して、宛先データベースで表領域の最新のバックアップをリストアします。

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  2. RESTORE FOREIGN TABLESPACEコマンドをFROM TRANSPORT FILEオプションとともに使用して、ソース・データベースで作成したトランスポート・ファイルを指定します。

    次の文は、表領域mf_tbsのバックアップを使用して、データファイルをリストアします。RMANは、最初に最新のレベル0のバックアップからデータファイルをリストアし、増分レベル1のバックアップを適用することでリストアしたデータファイルをロールフォワードしてから、宛先データベースの表領域をプラグインします。

    トランスポート・ファイルmf_tbs_transportfile.xmlには、リストア操作に必要なバックアップ情報が含まれています。

    RMAN> RESTORE
    FOREIGN TABLESPACE my_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml';
    バックアップおよび以前のリリースのOracle Databaseで作成されたエクスポート・ダンプ・ファイル・バックアップを使用して表領域をトランスポートする場合、RESTOREコマンドを実行するときに次を含める必要があります:
    • 表領域のバックアップ中に作成されたエクスポート・ダンプ・ファイルをRMANでリストアする必要があることを指定するDUMP FILE
    • エクスポート・ダンプ・ファイルを抽出して格納するディレクトリを指定するDATAPUMP DESTINATION
    • エクスポート・ダンプ・ファイルが含まれるバックアップ・セットの名前を指定するFROM BACKUPSET
    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml'
    DUMP FILE DATAPUMP DESTINATION '/tmp/xplat_backups/'
    FROM BACKUPSET 'mf_tbs_datapump.bck';

    この例では、バックアップ・セットmf_tbs_datapump.bckからエクスポート・ダンプ・ファイルを抽出するための場所として/tmp/xplat_backups/が指定されています。

28.6.4 NOCATALOGモードでの複数の増分バックアップを使用した表領域のトランスポート

この方法は、NOCATALOGモードで大きな表領域をトランスポートする場合に使用します。

宛先データベースでは、最初に表領域の既存のバックアップまたは新しいバックアップからデータファイルをリストアする必要があります。その後、リストアしたデータファイルは、複数の増分レベル1のバックアップを定期的に適用することでロールフォワードできます。ソース表領域は、宛先データベースで任意の数の増分レベル1のバックアップを適用している間、書込み用にオープンした状態を維持できます。アプリケーションの停止時間は、最終的な増分バックアップを作成する場合にのみ始まります。

この方法は、大規模な表領域のトランスポート時にデータベースの可用性を向上するために役立ちます。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。

28.6.4.1 ソース・データベース: 表領域のベース増分バックアップの作成

既存の表領域のバックアップを使用するか、ソース・データベースで表領域のレベル0のバックアップを作成します。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。
  2. ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。
    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限を付与されているユーザーです。
    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    sbuユーザーのパスワードを要求された場合は入力します。
  3. 次のいずれかのステップを実行します。
    • 表領域の既存のレベル0のバックアップを利用する場合は、レベル0のバックアップの作成以降に表領域で発生した直近のすべての変更を含めるために、増分レベル1のバックアップを作成します。

      次の文は、表領域mf_tbsの増分レベル1のバックアップを作成します。

      RMAN> BACKUP
      INCREMENTAL LEVEL 1
      TABLESPACE 'mf_tbs';
    • または、表領域のレベル0のバックアップを作成します。

      次の文は、表領域mf_tbsの増分レベル0のバックアップを作成します。

      RMAN> BACKUP
      INCREMENTAL LEVEL 1
      TABLESPACE 'mf_tbs';
  4. ソース・データベースで、RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。
    次の文は、mf_tbs_transportfile.xmlという名前のトランスポート・ファイルを作成します
    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/sales_pdb_transportfile.xml'
    TABLESPACE mf_tbs;
  5. オペレーティング・システム固有のユーティリティを使用して、トランスポート・ファイルをソース・ホストから宛先ホストに手動でコピーします。または、トランスポート・ファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。
28.6.4.2 宛先データベース: NOCATALOGモードでの表領域のベース増分バックアップのリストア

宛先データベースで、トランスポート・ファイルを使用して、トランスポートする表領域のベース増分レベル0のバックアップをリストアします。レベル0のバックアップは、それに続く表領域の増分レベル1のバックアップをリストアするためのRMANの基礎として機能します。

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  2. RESTORE FOREIGN TABLESPACEコマンドをFROM TRANSPORT FILEオプションとともに使用して、ソース・ホストで作成したトランスポート・ファイルを指定します。

    次の文は、表領域my_tbsのバックアップからデータファイルをリストアします。RMANは、最初にレベル0のバックアップからデータファイルをリストアし、増分レベル1のバックアップをすべて適用することでデータファイルをロールフォワードします。mf_tbs_transportfile.xmlトランスポート・ファイルには、リストア操作に必要なバックアップ情報が含まれています。

    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml';
28.6.4.3 NOCATALOGモードでの増分バックアップを使用したデータファイルのリストア

宛先データベースでは、レベル1の増分バックアップを定期的に適用することで、以前にリストアしたデータファイルをロールフォワードできます。ソース表領域は、バックアップおよびリストア操作中、書込み用にオープン状態を維持できます。

ソース・データベースで、表領域の増分レベル1のバックアップを作成します。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。
  2. ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。
    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限を付与されているユーザーです。
    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    sbuユーザーのパスワードを要求された場合は入力します。
  3. INCREMENTAL LEVEL 1句をBACKUP TABLESPACEコマンドで使用して、表領域の増分レベル1のバックアップを作成します。増分レベル1のバックアップを複数作成してから、単一のリストア操作を宛先データベースで実行できます。
    この例では、表領域my_tbsの増分レベル1のバックアップを作成します。
    RMAN> BACKUP 
    INCREMENTAL LEVEL 1
    TABLESPACE my_tbs;
  4. ソース・データベースで、RESTOREコマンドをPREVIEWオプションおよびTO TRANSPORT FILEオプションとともに使用して、トランスポート・ファイルを作成します。
    次の文は、mf_tbs_transportfile.xmlという名前のトランスポート・ファイルを作成します
    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml'
    TABLESPACE mf_tbs;
  5. オペレーティング・システム固有のユーティリティを使用して、トランスポートXMLファイルをソース・ホストから宛先ホストに手動でコピーします。または、XMLファイルをネットワーク・ファイル・システム(NFS)パスまたは宛先ホストからアクセスできる共有の場所に格納します。

宛先データベースで、表領域の増分レベル1のバックアップを適用して、以前にリストアしたデータファイルをロールフォワードします。

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  2. ソース・ホストで作成した表領域のバックアップからデータファイルをリストアします。RESTORE FOREIGN TABLESPACEコマンドを、FROM TRANSPORT FILEオプションを指定して使用します。

    ソース表領域の増分レベル1のバックアップを複数作成していた場合、RMANはバックアップが作成された同じ順序で増分バックアップを適用します。

    次の文は、宛先ホストの表領域mf_tbsの増分バックアップから、データファイルをリストアします。mf_tbs_transportfile.xmlトランスポート・ファイルには、リストア操作に必要なバックアップ情報が含まれています。

    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml';
28.6.4.4 宛先データベース: NOCATALOGモードでの表領域の最終的な増分バックアップの作成

最終的な増分レベル1のバックアップとエクスポート・ダンプ・ファイルを作成して、宛先データベースへの最終的なトランスポート用の表領域を準備します。

  1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。
  2. ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。
    この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限を付与されているユーザーです。
    RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
    sbuユーザーのパスワードを要求された場合は入力します。
  3. トランスポートする表領域を読取り専用モードに設定します。
    次のコマンドは、表領域mf_tbsを読取り専用モードにします。
    ALTER TABLESPACE mf_tbs READ ONLY;
  4. 表領域の最終的な増分レベル1のバックアップを作成します。DATAPUMP句を使用して、増分バックアップに付随するエクスポート・ダンプ・ファイルを作成します。
    この例では、表領域mf_tbsの最終的な増分レベル1のバックアップを作成します。
    RMAN> BACKUP 
    INCREMENTAL LEVEL 1
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/my_tbs_incr.bck'
    DATAPUMP BACKUP FORMAT 'pump.dmp'
    TAG 'mf_plugin_tag';
    この例では、mf_tbs_incr.bckファイルに増分バックアップをします。pump.dmpファイルには、エクスポート・ダンプ・ファイルのバックアップを格納します。
  5. ソース・データベースで、RESTOREコマンドをPREVIEWオプションとともに使用し、TO TRANSPORT FILEオプションを使用してトランスポートXMLファイルを作成します。
    RMAN> RESTORE PREVIEW
    TO TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transport.xml'
    PLUGIN TAG 'mf_plugin_tag'
    TABLESPACE mf_tbs;
    この例では、プラグイン・タグmf_plugin_tagは、ソース表領域mf_tbsに対応するダンプ・ファイルのバックアップを識別します。
  6. オペレーティング・システム・ユーティリティを使用して、トランスポートXMLファイルをネットワーク・ファイル・システム(NFS)または宛先データベース・ホストからアクセスできる共有の場所にコピーします。
28.6.4.5 宛先データベース: NOCATALOGモードでの表領域の最終的なトランスポートの実行

最後のステップとして、データファイルをリストアし、宛先データベースに表領域をプラグインします。

  1. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限を持つユーザーとして宛先データベースに接続します。
  2. RESTORE FOREIGN TABLESPACEコマンドをFROM TRANSPORT FILEオプションとともに使用して、ソース・ホストで作成したトランスポート・ファイルを指定します。

    次の文は、宛先データベース上のmf_tbs表領域をリストアします。FROM TRANSPORT FILEコマンドでは、ソース・データベースで作成したトランスポート・ファイルを指定します。

    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml';
    バックアップおよび以前のリリースのOracle Databaseで作成されたエクスポート・ダンプ・ファイル・バックアップを使用して表領域をトランスポートする場合、RESTOREコマンドを実行するときに次を含める必要があります:
    • 表領域のバックアップ中に作成されたエクスポート・ダンプ・ファイルをRMANでリストアする必要があることを指定するDUMP FILE句。

      エクスポート・ダンプ・ファイルを抽出して格納するディレクトリを指定するDATAPUMP DESTINATION句。

    • エクスポート・ダンプ・ファイルが含まれるバックアップ・セットの名前を指定するFROM BACKUPSET句。
    RMAN> RESTORE
    FOREIGN TABLESPACE mf_tbs
    FORMAT '/oradata/%U'
    FROM TRANSPORT FILE '/tmp/xplat_backups/mf_tbs_transportfile.xml'
    DUMP FILE DATAPUMP DESTINATION '/tmp/xplat_backups/'
    FROM BACKUPSET 'mf_tbs_datapump.bck';

    この例では、バックアップ・セットmf_tbs_datapump.bckからエクスポート・ダンプ・ファイルを抽出するための場所として/tmp/xplat_backups/が指定されています。

28.7 ネットワーク経由での表領域のトランスポート

RMANでは、表領域をネットワーク経由でトランスポートできます。

28.7.1 ネットワーク経由での表領域のトランスポートについて

Oracle Database 23ai以降では、ネットワーク経由でソース・データベースから宛先データベースに表領域をトランスポートするためにRMANを使用できます。

RMANはソース・データベースに接続し、表領域の必要なバックアップを作成し、オプションでデータファイルをネットワーク経由で転送して、宛先データベースでデータファイルをリストアできます。さらに、RMANは宛先データベースの表領域をプラグインします。

ネットワーク経由で表領域をトランスポートするために、RMANはRESTOREコマンドをFROM SERVICE句、FOREIGN TABLESPACE句およびPLUGIN DBLINK句とともに使用します。

また、RECOVERコマンドを使用すると、宛先データベースでリストアした表領域を定期的にロールフォワードできます。

次に、ソース・データベースから宛先データベースにネットワーク経由で表領域をトランスポートするための主要なステップを示します。

宛先データベースの場合:
  • RESTOREコマンドをFOREIGN TABLESPACE句およびFROM SERVICE句とともに実行します。RMANは、ソース表領域のレベル0のバックアップからデータファイルをリストアします。
  • オプションで、RECOVERコマンドをFOREIGN TABLESPACE句およびFROM SERVICE句とともに実行できます。RMANは、ソース表領域の増分レベル1のバックアップを使用して、以前にリストアしたデータファイルをロールフォワードします。
  • ソース表領域が読取り専用モードの場合は、RECOVERコマンドをFOREIGN TABLESPACE句、FROM SERVICE句およびPLUGIN DBLINK句とともに使用して、最終的な増分バックアップからデータファイルをリカバリし、宛先データベースの表領域をプラグインします。

ノート:

宛先データベースでOracle Active Data Guardの論理データベース・ローリング・アップグレード・プロセスが実行中の場合、RMANはバックアップを使用したデータのトランスポートに関連する最終ステップを正常に完了できなくなります。この理由は、ローリング・アップグレード・プロセスが、RMANによる最終的なバックアップのリストアと宛先データベースへの表領域のプラグインに必要なバックアップ・メタデータのインポートを制限するためです。

28.7.2 ネットワーク経由での表領域の迅速なトランスポート

RMANを使用して、ネットワーク経由で表領域バックアップからデータファイルをリストアすることで、表領域をすばやくトランスポートします。この方法は、バックアップにかかる時間が短い小規模なPDBをトランスポートする場合にお薦めします。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。
  1. 次のステップをソース・データベースで実行します。
    1. 表領域をトランスポートする必要があるソース・データベースに、TARGETとして接続します。

      ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。

      この例では、sbuは、ソース・データベースprod_sourceSYSBACKUP権限が付与されているユーザーです。

      RMAN> CONNECT TARGET "sbu@prod_source AS SYSBACKUP";
      

      sbuユーザーのパスワードを要求された場合は入力します。

    2. 表領域を読取り専用モードにします。
      次のコマンドは、表領域mf_tbsを読取り専用モードにします。
      ALTER TABLESPACE mf_tbs READ ONLY;
      
    3. ソース・データベースで、SYSBACKUPユーザーにEXP_FULL_DATABASE権限を付与します。
  2. 次のステップを宛先データベースで実行します。
    1. 宛先データベース(表領域をトランスポートする必要がある宛先)に、TARGETとして接続します。

      ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。

      この例では、sbuは、宛先データベースprod_destSYSBACKUP権限が付与されているユーザーです。

      RMAN> CONNECT TARGET "sbu@prod_dest AS SYSBACKUP";
      

      sbuユーザーのパスワードを要求された場合は入力します。

    2. SQL*PLUS CREATE DATABASE LINK文を使用してPUBLIC dblinkを作成します。
      たとえば、次の文では、宛先データベースのユーザーrcoが、CDB cdb1のデータベースpdb1を参照するmftbspluginlinkというデータベース・リンクを定義しています。
      CREATE PUBLIC DATABASE LINK mftbspluginlink CONNECT TO rco IDENTIFIED BY password USING 'cdb1_pdb1'
    3. 単一のリストア操作を実行することで、RMANはソース・データベースに接続し、表領域のレベル0のバックアップを作成し、ネットワーク経由でデータファイルを転送して、宛先データベースでデータファイルをリストアできます。さらに、RMANは宛先データベースに表領域をプラグインします。
      FOREIGN TABLESPACEコマンドを使用して、ソース・データベース上の表領域の名前を指定します。
      FROM SERVICE句を使用して、ソース・データベースのサービス名を指定します。
      オプションで、PLUGIN FILE句を使用してファイル名と場所を指定し、宛先データベースの表領域をプラグインするために必要なメタデータが含まれているエクスポート・ダンプ・ファイルがその場所に保存されるようにします。
      PLUGIN DBLINK句を使用して宛先データベースにアクセスするデータベース・リンクを指定します。
      次の文は、サービス名source_dbのソース・データベースから、表領域mf_tbsのバックアップを使用して、データファイルをリストアします。PLUGIN FILE句は、表領域の構造メタデータを/tmp/xplat_backups/mf_tbs.dmpに格納する必要があることを指定しています。PLUGIN DBLINKでは、宛先データベースで作成したmftbspluginlinkデータベース・リンクを指定します。
      RMAN> RESTORE 
      FOREIGN TABLESPACE 'mf_tbs' 
      FORMAT 'tbs1%f.f' 
      FROM SERVICE 'source_db' 
      PLUGIN FILE '/tmp/xplat_backups/mf_tbs.dmp'
      PLUGIN DBLINK 'mftbspluginlink';

28.7.3 ネットワーク経由での増分バックアップを使用したデータファイルのリストアによる表領域のトランスポート

ネットワークを使用して表領域のレベル0のバックアップからデータファイルをリストアし、ネットワーク経由で表領域の最終的なトランスポートを実行するまで、リストアしたデータファイルをリカバリします。

「RMANバックアップを使用したデータのトランスポートの前提条件」の説明に従って、前提条件を満たしていることを確認してください。
  1. 宛先データベース(表領域をトランスポートする必要がある宛先)に、TARGETとして接続します。

    ルートの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーとしてルートに接続します。PDBの表領域の場合は、SYSDBAまたはSYSBACKUP権限を持つ共通ユーザーまたはローカル・ユーザーとしてPDBに接続します。

    この例では、sbuは、宛先データベースprod_destSYSBACKUP権限が付与されているユーザーです。

    RMAN> CONNECT TARGET "sbu@prod_dest AS SYSBACKUP";
    

    sbuユーザーのパスワードを要求された場合は入力します。

  2. 宛先データベースで、FROM SERVICE句を使用してリストア操作を実行します。
    RMANはソース・データベースに接続し、ソース表領域の必要なバックアップを作成し、ネットワーク経由でデータファイルを転送してから、宛先データベースでデータファイルをリストアします。最初のバックアップは常に増分レベル0のバックアップであり、それに続く増分レベル1のバックアップを適用するベースとして機能します。
    RESTOREコマンドをFOREIGN TABLESPACEコマンドとともに実行して、ソース表領域の名前を指定します。
    FROM SERVICE句を使用して、ソース・データベースのサービス名を指定します。
    次の文は、サービス名source_dbのソース・データベースから、表領域mf_tbsのレベル0のバックアップからデータファイルをリストアします。
    RMAN> RESTORE 
    FOREIGN TABLESPACE 'mf_tbs'
    FORMAT 'tbs1%f.f' 
    FROM SERVICE 'source_db'; 
    

ソース表領域が書込み用にオープンしている間は、宛先データベースでリカバリ操作を定期的に実行できます。RECOVERコマンドを使用すると、RMANはソース表領域の増分レベル1のバックアップを適用して、データファイルをロールフォワードできます。最終的な増分バックアップで表領域をトランスポートするまで、リカバリ操作は回数の制限なしに実行できます。

  1. RECOVERコマンドをFOREIGN TABLESPACE句とともに実行して、ソース・データベースでの表領域の名前を指定します。
    FROM SERVICE句を使用して、ソース・データベースのサービス名を指定します。
    次の文は、サービス名source_dbのソース・データベースから表領域mf_tbsをリカバリします。
    RECOVER 
    FOREIGN TABLESPACE 'mf_tbs'
    FORMAT 'tbs1%f.f' 
    FROM SERVICE 'source_db';
  2. SQL*PLUS CREATE DATABASE LINK文を使用してPUBLIC dblinkを作成します。
    たとえば、次の文では、宛先データベースのユーザーrcoが、CDB cdb1のデータベースpdb1を参照するmftbspluginlinkというデータベース・リンクを定義しています。
    CREATE PUBLIC DATABASE LINK mftbspluginlink CONNECT TO rco IDENTIFIED BY password USING 'cdb1_pdb1'
  3. ソース・データベースで、SYSBACKUPユーザーにEXP_FULL_DATABASE権限を付与します。
  4. ソース表領域が読取り専用モードに設定されている場合は、最終的な増分バックアップを使用してデータファイルをリカバリし、表領域を宛先データベースに接続できます。
    RECOVERコマンドをFOREIGN TABLESPACEコマンドとともに実行して、ソース表領域の名前を指定します。
    FROM SERVICE句を使用して、ソース・データベースのサービス名を指定します。
    オプションで、PLUGIN FILE句を使用してファイル名と場所を指定し、宛先データベースの表領域をプラグインするために必要なメタデータが含まれているエクスポート・ダンプ・ファイルがその場所に保存されるようにします。
    PLUGIN DBLINK句を使用して宛先データベースへのアクセスに必要なデータベース・リンクを指定します。
    次の文は、サービス名source_dbのソース・データベースから、表領域mf_tbsのデータファイルをリストアします。PLUGIN FILE句は、表領域の構造メタデータを/tmp/xplat_backups/mf_tbs.dmpに格納する必要があることを指定しています。PLUGIN DBLINKでは、宛先データベースで作成したデータベース・リンクmftbsdblinkを指定します。
    RMAN> RESTORE 
    FOREIGN TABLESPACE 'mf_tbs1' 
    FORMAT 'tbs1%f.f' 
    FROM SERVICE 'source_db' 
    PLUGIN FILE '/tmp/xplat_backups/mf_tbs.dmp'
    PLUGIN DBLINK 'mftbspluginlink'; 
    
    RMANは、最終的な増分バックアップからデータファイルをリカバリし、宛先データベースの表領域をプラグインします。

28.8 フィジカル・スタンバイ・データベースからのバックアップを使用したデータのトランスポート

ソースのフィジカル・スタンバイ・データベースで作成されたバックアップを使用して、プラガブル・データベース(PDB)または表領域を、宛先ホストにある別のプライマリ・データベースまたはスタンバイ・データベースにトランスポートできます。

28.8.1 フィジカル・スタンバイ・データベースからのバックアップを使用したデータのトランスポートについて

この方法では、ソースのフィジカル・スタンバイ・データベースを使用して、増分バックアップを作成することや、宛先ホスト上の別のプライマリ・データベースまたはスタンバイ・データベースにトランスポートする必要があるPDBまたは表領域の構造メタデータを抽出することができます。

宛先ホスト上のプライマリ・データベースにデータをトランスポートするために必要な手順を次に示します:
  • ソースのフィジカル・スタンバイ・データベースでブロック・チェンジ・トラッキングを有効にします。管理リカバリ・プロセスが実行されていることを確認します。
  • RMANをソース・スタンバイ・データベースに接続して、宛先プライマリ・データベースにトランスポートする必要があるデータベースまたは表領域の増分レベル0バックアップを作成します。可能な場合は、既存のレベル0バックアップを利用することもできます。
  • 宛先プライマリ・データベースで、ソース・スタンバイ・データベースで作成したレベル0バックアップから、データファイルをリストアします。宛先ホストにある既存のフィジカル・スタンバイ・データベースでデータファイルをリストアすることもできます。

    リストアしたデータファイルを、複数の増分レベル1バックアップを定期的に適用することでロールフォワードします。最終トランスポートの実行が必要になるまで、宛先プライマリ・データベースで任意の数の増分レベル1バックアップを適用し続けることができます。

  • 最終トランスポートを実行する前に、ソース・スタンバイ・データベースで次の前提条件タスクを完了します:
    • 保証付きリストア・ポイントを作成します。トランスポート・プロセスの間に想定外の障害が発生した場合は、ソース・スタンバイ・データベースを保証付きリストア・ポイントにリカバリできます。
    • 管理リカバリ・プロセスを停止してから、フィジカル・スタンバイ・データベースをスナップショット・スタンバイ・データベースに変換します。これにより、最終的な増分レベル1バックアップが、宛先データベースでのリカバリ可能性のために、一貫性のある状態になります。

      ノート:

      オプションで、RMANをソース・プライマリ・データベースに接続して最終的な増分バックアップおよびエクスポート・ダンプ・ファイルを作成できます。この場合は、フィジカル・スタンバイ・データベースでの準備タスクを省略して、プライマリ・データベースでの最終的な増分バックアップの作成に直接進むことができます。ただし、これにより、プライマリ・データベースで、最小限の停止時間が発生する場合があります。停止時間を回避しビジネス継続性を確保するために、ソース・スタンバイ・データベースを使用して最終トランスポートに必要な手順を実行することをお薦めします。
  • ソース・スタンバイ・データベースで、データベースまたは表領域の最終的な増分レベル1バックアップを作成します。PDBをトランスポートする場合は、ソースPDBの構造メタデータを含むアンプラグXMLファイルを作成します。表領域の場合は、表領域メタデータを含むデータ・ポンプ・エクスポート・ダンプ・ファイルを作成する必要があります。
  • 宛先プライマリ・データベースで、RESTOREコマンドを使用してトランスポート・リストを作成します。そのトランスポート・リストを使用して、宛先プライマリ・データベースでデータファイルをリストアします。
データを宛先プライマリ・データベースにトランスポートした後、次の手順を使用して、そのデータを宛先ホスト上のスタンバイ・データベースにトランスポートします:
  • 管理リカバリ・プロセスを停止します。
  • DB_CREATE_FILE_DEST初期化パラメータを設定してスタンバイ・データベース用のデータファイルの場所を指定します。
  • 宛先ホストで、RMANを、TARGETとしてフィジカル・スタンバイ・データベースに接続します。ソース・スタンバイ・データベースの増分レベル0バックアップからデータファイルをリストアします。リストアしたデータファイルを、複数の増分レベル1バックアップおよび最終増分バックアップを適用することでロールフォワードします。
  • 新しく追加されたデータ・ファイルの名前を手動で変更できるように、STANDBY_FILE_MANAGEMENTデータベース初期化パラメータをMANUALに設定します。
  • 管理リカバリ・プロセスを起動します。

    スタンバイ・データベースによってREDOが適用されると、リカバリ・プロセスにより、UNNAMEDというフレーズを含む名前で制御ファイル・エントリが作成され、リカバリが停止されます。フィジカル・スタンバイ・データベース上のメディア・リカバリですべてのプラグイン・ファイルが認識されるまで、ALTER DATABASE RENAME FILE文を使用して個々のデータファイルの名前を手動で変更します。

28.8.2 フィジカル・スタンバイ・データベースからのバックアップを使用したデータ・トランスポートの実行

ソースのフィジカル・スタンバイ・データベースを使用して、PDBまたは表領域を、宛先ホストにある別のプライマリ・データベースまたはフィジカル・スタンバイ・データベースにトランスポートします。

  1. SQL*Plusを起動し、SYSBACKUP権限があるユーザーとして、ソースのフィジカル・スタンバイ・データベースに接続します。
  2. ブロック・チェンジ・トラッキングを有効にします。
    詳細な手順は、「ブロック・チェンジ・トラッキングの有効化」を参照してください。
  3. ソースのフィジカル・スタンバイ・データベースがリアルタイム適用モードで動作していることを確認します。詳細は、『Oracle Data Guard概要および管理』を参照してください。
  4. 管理リカバリ・プロセスが実行されていることを確認します。
  5. RMANを起動し、TARGETとしてソースのフィジカル・スタンバイ・データベースに接続します。リカバリ・カタログにも接続することをお薦めします。
    次のコマンドでTARGETとしてソースのフィジカル・スタンバイ・データベースに接続し、CATALOGとしてリカバリ・カタログに接続します。ソース・フィジカル・スタンバイへの接続は、sbuユーザーを使用して確立されます。このユーザーにはSYSBACKUP権限が与えられています。ソースのフィジカル・スタンバイ・データベースのネット・サービス名はstandby_dbであり、リカバリ・カタログのその名前はcatdbです。
    
    CONNECT TARGET "sbu@standby_db AS SYSBACKUP";
    CONNECT CATALOG rman@catdb;
  6. 宛先データベースにトランスポートする必要があるPDBまたは表領域の増分レベル0バックアップを作成します。

    次のコマンドでは、ソースのフィジカル・スタンバイ・データベースに表領域mf_tbsの増分レベル0バックアップが作成されます。

    BACKUP
    INCREMENTAL LEVEL 0
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/mf_tbs_full%U.bck';
    PDBをトランスポートする場合は、PLUGGABLE DATABASEコマンドを使用してソースPDBを指定します。
  7. CONNECT TARGETコマンドを使用して、SYSDBAまたはSYSBACKUP権限があるユーザーとして宛先プライマリ・データベースに接続します。
  8. ソース・スタンバイ・データベースからの増分レベル0バックアップを使用してデータファイルをリストアするには、次の手順を実行します。
    1. RMANをリカバリ・カタログに接続します。
    2. FOREIGN DBIDオプションを指定してSETコマンドを使用し、リストア操作に使用するPDBまたは表領域バックアップを含むソース・フィジカル・スタンバイ・データベースのデータベース識別子またはDBIDを指定します。
    3. PREVIEWオプションとTO TRANSPORT LISTオプションを指定してRESTOREコマンドを使用し、リストア操作においてRMANによって使用されるバックアップのインメモリー・リストを作成します。
    4. FOREIGN TABLESPACEまたはFOREIGN PLUGGABLE DATABASEオプション、およびTO TRANSPORT LIST句を指定してRESTOREコマンドを実行し、PDBまたは表領域のレベル0バックアップをリストアします。
    同じ手順を使用して宛先フィジカル・スタンバイ・データベースで外部データファイルをリストアできます。
  9. ソースのフィジカル・スタンバイ・データベースに接続し、PDBまたは表領域の増分レベル1バックアップを作成します。
    次のコマンドでは、表領域mf_tbsの増分レベル1バックアップが作成されます。
    BACKUP
    INCREMENTAL LEVEL 1
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/mf_tbs_incr1%U.bck';
    PLUGGABLE DATABASEコマンドを使用して、ソースPDBを指定します。
  10. 宛先プライマリ・データベースで、PDBまたは表領域の増分レベル1バックアップを適用することで、以前にリストアしたデータファイルをロールフォワードします。
    最終トランスポートの実行が必要になるまでの、宛先データベースでソースPDBまたは表領域の増分レベル1バックアップを適用できる回数に制限はありません。
    同じ手順を使用して宛先フィジカル・スタンバイ・データベースで外部データファイルをリストアできます。
  11. ソースのフィジカル・スタンバイ・データベースでこれらのタスクを完了して最終トランスポートために準備します。ソース・プライマリ・データベースを使用して最終増分バックアップおよびエクスポート・ファイルを作成する必要がある場合は、これらの準備手順を省略してステップ12に直接進みます。
    1. ソースのフィジカル・スタンバイ・データベースで、SQL*Plusを起動して、保証付きリストア・ポイントを作成し、管理リカバリ・プロセスを停止してから、フィジカル・スタンバイ・データベースを、スナップショット・スタンバイ・データベースになるように変換します。
    2. トランスポート・プロセスの間に想定外の障害が発生したときにソースのフィジカル・スタンバイ・データベースを保証付きリストア・ポイントにリカバリできるように、保証付きリストア・ポイントを作します。
      次のコマンドでは、保証付きリストア・ポイントが作成されます。
      SQL> CREATE RESTORE POINT mf_tbs_standby GUARANTEE 
      FLASHBACK DATABASE;
    3. ソースのフィジカル・スタンバイ・データベースで管理リカバリ・プロセスを停止します。
      次のコマンドでは、管理リカバリ・プロセスが停止されます。
      ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
    4. このコマンドを使用して、フィジカル・スタンバイ・データベースをスナップショット・スタンバイ・データベースに変換します:
      SQL> ALTER DATABASE CONVERT TO SNAPSHOT STANDBY;
  12. トランスポートする表領域を読取り専用モードに設定します。PDBをトランスポートする場合は、必ずPDBをクローズします。
    次のコマンドは、表領域mf_tbsを読取り専用モードにします。
    ALTER TABLESPACE mf_tbs READ ONLY;
    次のコマンドを使用してPDBをクローズします:
    ALTER PLUGGABLE DATABASE sales_pdb CLOSE IMMEDIATE;

    ノート:

    ソース・プライマリ・データベースを使用して最終増分バックアップを作成する必要がある場合は、TARGETとしてソース・プライマリ・データベースにRMANが接続されていることを確認します。ただし、ソースのフィジカル・スタンバイ・データベースを使用してソース・プライマリ・データベースでの停止時間を短くすることをお薦めします。
  13. 宛先ホスト上のプライマリ・データベースにトランスポートされているPDBまたは表領域の最終増分レベル1バックアップを作成します。
    次の文では、表領域mf_tbsの増分レベル1のバックアップとエクスポート・ダンプ・ファイルを作成します。DATAPUMP句により、宛先データベースで表領域mf_tbsをプラグインするために必要なメタデータを含む、エクスポート・ダンプ・ファイルが生成されます。
    BACKUP
    INCREMENTAL LEVEL 1
    TABLESPACE mf_tbs
    FORMAT '/tmp/xplat_backups/my_tbs_incr.bck'
    DATAPUMP BACKUP FORMAT 'pump.dmp'
    TAG 'mf_plugin_tag';
    次の文は、PDB sales_pdbの増分レベル1のバックアップを作成します。PDBはソースCDBからアンプラグされます。UNPLUG INTO句では、PDBがソースCDBからアンプラグされるときにそのPDBの構造メタデータを格納するための、XMLファイルを指定します。TAG句では、RMANバックアップの識別に使用されるバックアップ・タグを指定します。
    BACKUP 
    UNPLUG INTO '/tmp/pdb_dumpfiles/sales_pdb_unplug.xml'
    INCREMENTAL LEVEL 1
    PLUGGABLE DATABASE sales_pdb
    XML BACKUP FORMAT '/tmp/pdb_backups/sales_pdb_unplug.bck'
    TAG 'sales_pdb_plugin_tag';
  14. 宛先データベースで、最終増分レベル1バックアップからデータファイルをリストアし、PDBまたは表領域をプラグインします。
    バックアップを使用してPDBをトランスポートする詳細な手順は、「複数の増分バックアップおよびリカバリ・カタログ接続を使用したPDBのトランスポート」を参照してください。
    バックアップを使用して表領域をトランスポートする詳細な手順は、「複数の増分バックアップとリカバリ・カタログを使用した表領域のトランスポート」を参照してください。
  15. ソースのフィジカル・スタンバイ・データベースで、SQL*Plusを起動し、スナップショット・スタンバイ・データベースをフィジカル・スタンバイ・データベースとして変換します。
    SQL> ALTER DATABASE CONVERT TO PHYSICAL STANDBY;
    

次に、PDBまたは表領域を、宛先ホストにある既存のフィジカル・スタンバイ・データベースにトランスポートします。ソース・スタンバイ・データベースからの同じバックアップを使用して、宛先スタンバイ・データベース用に必要なデータファイルを作成できます。

  1. 宛先ホストで、SQL*Plusを起動し、SYSBACKUP権限があるユーザーとしてフィジカル・スタンバイ・データベースに接続します。
  2. 管理リカバリ・プロセスを停止します。
    次のコマンドでは、管理リカバリ・プロセスが停止されます。
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
  3. DB_CREATE_FILE_DEST初期化パラメータを使用して、宛先スタンバイ・データベースに必要な、リストアされたデータファイルの場所を指定します。
    DB_CREATE_FILE_DEST初期化パラメータを設定するには、次の形式のALTER SYSTEM文を使用します:
    ALTER SYSTEM SET DB_CREATE_FILE_DEST = 'scratch/testdb/';
  4. RMANをTARGETとして宛先フィジカル・スタンバイ・データベースに接続し、ソース・スタンバイ・データベースで作成されたバックアップを使用して、すべてのデータファイルをリストアします。外部データファイルを外部データファイル・リストアとともに宛先プライマリ・データベースにリストア(ステップ8で説明)することもできます。
  5. フィジカル・スタンバイ・データベースで、STANDBY_FILE_MANAGEMENTデータベース・パラメータをMANUALに設定します。
    ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT = MANUAL;
  6. 管理リカバリ・プロセスを起動します。
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
    スタンバイ・データベースによって、プラグインされたデータファイルにREDOが適用されると、リカバリ・プロセスにより、UNNAMEDを含む名前で制御ファイル・エントリが作成され、リカバリが停止されます。データベース・アラート・ログに、データファイルごとに同様のエラー・メッセージが表示されます。
    
    Plugged in file #14 added to control file as 'UNNAMED00014' because
    the parameter STANDBY_FILE_MANAGEMENT is set to MANUAL
    The file should be manually created to continue.
    PR00 (PID:229327): MRP0: Background Media Recovery terminated with error 1274
    2023-06-22T16:20:14.814443+00:00
    Plugged in file #16 added to control file as 'UNNAMED00016' because
    the parameter STANDBY_FILE_MANAGEMENT is set to MANUAL
    The file should be manually created to continue.
    Plugged in file #17 added to control file as 'UNNAMED00017' because
    the parameter STANDBY_FILE_MANAGEMENT is set to MANUAL
    The file should be manually created to continue.
  7. ALTER DATABASE RENAME FILE文を使用し、手動で個々のデータファイルを名前変更してリストア済外部データファイルにする必要があります。
    1. 次のSQLスクリプトを実行して、個別のALTER DATABASE RENAME FILE文を生成し、表領域内の各データファイルの名前を変更します。たとえば、表領域に3つのデータファイルが含まれている場合は、このSQLスクリプトを実行して、3つの異なるALTER DATABASE RENAME FILEコマンドを生成します(各コマンドは1つのデータファイルに固有)。
      select 'alter database rename file 
      ''' || a.name || ''' to '''|| b.name || ''';' 
      from v$datafile a, v$datafile_copy b where a.name like '%UNNAME%' 
      and b.creation_change#=a.foreign_creation_change# 
      and b.name is not null 
      and b.rfile#=a.rfile#;
      この例では、mf_tbs表領域からの3つのサンプル・データファイルdf1df2およびdf3の名前を変更するためにこのSQLスクリプトによって生成されたALTER DATABASE RENAME FILE文を示しています。
      ALTER DATABASE RENAME FILE 
      '/scratch/testdb/UNNAMED00014' to '/scratch/testdb/df1.dbf';
      ALTER DATABASE RENAME FILE 
      '/scratch/testdb/UNNAMED00016' to '/scratch/testdb/df2.dbf';
      ALTER DATABASE RENAME FILE 
      '/scratch/testdb/UNNAMED00017' to '/scratch/testdb/df3.dbf';
    2. 宛先フィジカル・スタンバイ・データベース上のメディア・リカバリですべてのプラグイン済ファイルが認識されるまで、ステップ21および22を繰り返します。