RMANクロス・プラットフォーム・トランスポータブル表領域バックアップ・セット

この方法は、オンプレミス・データベースとデータベース・サービスのデータベースのキャラクタ・セットに互換性がある場合にのみ使用できます。

ノート

データベース全体のクロス・プラットフォーム・トランスポートを実行できる類似の方法の詳細は、リリース12.2または12.1『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』を参照してください。データベース全体を別のプラットフォームにトランスポートする場合は、トランスポート元プラットフォームとトランスポート先プラットフォームが同じエンディアン形式を使用している必要があります。

RMANクロス・プラットフォーム・トランスポータブル・バックアップ・セット方法を使用して、Oracle Database 12cのオンプレミス表領域をデータベース・サービス・デプロイメント上のOracle Database 12cデータベースに移行するには、次のタスクを実行します:

  1. オンプレミス・データベース・ホストで、トランスポートする予定のユーザー定義表領域をREAD ONLYモードにして、データベースを準備します。

  2. オンプレミス・データベース・ホストで、RMANを起動し、TO PLATFORMまたはFOR TRANSPORT句およびDATAPUMP句を指定したBACKUPコマンドを使用して、クロス・プラットフォーム・トランスポート用のバックアップ・セットを作成します。BACKUPコマンドの詳細は、リリース12.2または12.1『Oracle Databaseバックアップおよびリカバリ・リファレンス』BACKUPを参照してください。

  3. セキュア・コピー・ユーティリティを使用して、Data Pump Exportダンプ・ファイルを含むバックアップ・セットを、データベース・サービスのコンピュート・ノードに転送します。

  4. オンプレミスの表領域をREAD WRITEに戻します。

  5. データベース・サービスのコンピュート・ノードで、必要なスキーマを作成してデータベースを準備します。

  6. データベース・サービスのコンピュート・ノードで、RMANを起動し、foreignFileSpecサブ句を指定したRESTOREコマンドを使用して、クロス・プラットフォーム・バックアップをリストアします。

  7. データベース・サービスのコンピュート・ノードで、データベースの表領域をREAD WRITEモードに設定します。

詳細は、リリース12.2または12.1『Oracle Databaseバックアップおよびリカバリ・ユーザーズ・ガイド』バックアップ・セットを使用したクロス・プラットフォーム・データ・トランスポートの概要を参照してください。

RMANクロス・プラットフォーム・トランスポータブル表領域バックアップ・セット: 例

この例では、Oracle Database PDBからデータベース・サービスのデータベースに表領域を移行するために必要なタスクをステップごとに説明します。

この例では、FSDATAおよびFSINDEX表領域の移行を実行します。

この例では、オンプレミス・データベースはLinuxホスト上にあります。

  1. オンプレミス・データベース・ホストで、エクスポート・ダンプ・ファイル用のディレクトリを作成し、トランスポートする予定のユーザー定義表領域をREAD ONLYモードにすることで、データベースを準備します。

    1. オンプレミス・データベース・ホストで、エクスポート・ダンプで使用するディレクトリをオペレーティング・システムに作成します。

      mkdir /u01/app/oracle/admin/orcl/dpdump/for_cloud
    2. オンプレミス・データ・ホストで、SQL*Plusを起動し、SYSTEMユーザーとしてPDBにログインします。

      sqlplus system@pdb_servicename 
      Enter password: enter the password for the SYSTEM user
    3. オンプレミス・データベース内に、オペレーティング・システム・ディレクトリを参照するディレクトリ・オブジェクトを作成します。

      SQL> CREATE DIRECTORY dp_for_cloud AS '/u01/app/oracle/admin/orcl/dpdump/for_cloud';
    4. オンプレミス・データベース・ホストで、転送するすべての表領域(トランスポータブル・セット)をREAD ONLYモードに設定します。

      SQL> ALTER TABLESPACE fsindex READ ONLY;
      SQL> ALTER TABLESPACE fsdata READ ONLY;
    5. SQL*Plusを終了します。

  2. オンプレミス・データベース・ホストで、RMANを起動し、TO PLATFORMまたはFOR TRANSPORT句およびDATAPUMP句を指定したBACKUPコマンドを使用して、クロス・プラットフォーム・トランスポート用のバックアップ・セットを作成します。

    1. オンプレミス・データベース・ホストで、データファイル用のオペレーティング・システム・ディレクトリを作成します。

      mkdir /u01/app/oracle/admin/orcl/rman_transdest
    2. RMANを起動し、SYSDBAまたはSYSBACKUP権限が付与されたユーザーとしてログインします。

      rman target username@pdb_servicename 
    3. BACKUPコマンドを実行します。

      RMAN> BACKUP FOR TRANSPORT
      2> FORMAT '/u01/app/oracle/admin/orcl/rman_transdest/fs_tbs.bck'
      3> TABLESPACE fsdata,fsindex
      4> DATAPUMP FORMAT '/u01/app/oracle/admin/orcl/rman_transdest/fs_tbs.dmp';
    4. RMANからログアウトします。

    5. 必要に応じて、BACKUPコマンドで指定したディレクトリに移動し、作成されたファイルを確認します。

      cd /u01/app/oracle/admin/orcl/rman_transdest
      $ ls
      fs_tbs.bck  fs_tbs.dmp
  3. セキュア・コピー・ユーティリティを使用して、Data Pump Exportダンプ・ファイルを含むバックアップ・セットを、データベース・サービスのコンピュート・ノードに転送します。

    1. データベース・サービスのコンピュート・ノードで、バックアップ・セットとダンプ・ファイルのためのディレクトリを作成します。

      mkdir /tmp/from_onprem
    2. scpコマンドを使用してファイルをコピーする前に、データベース・サービスのコンピュート・ノードへのアクセスを提供するSSH秘密キーがオンプレミス・ホストで使用可能であることを確認してください。

    3. オンプレミス・データベース・ホストで、SCPユーティリティを使用して、バックアップ・セットとダンプ・ファイルをデータベース・サービスのコンピュート・ノードに転送します。

      scp -i private_key_file \
      /u01/app/oracle/admin/orcl/rman_transdest/fs_tbs.bck \
      oracle@IP_address_DBaaS_VM:/tmp/from_onprem
      
      $ scp -i private_key_file \
      /u01/app/oracle/admin/orcl/rman_transdest/fs_tbs.dmp \
      oracle@IP_address_DBaaS_VM:/tmp/from_onprem
      
      $ 
  4. オンプレミスの表領域をREAD WRITEに戻します。

    1. SQL*Plusを起動し、SYSTEMユーザーとしてPDBにログインします。

    2. FSDATAおよびFSINDEX表領域をREAD WRITEモードに戻します。

      SQL> ALTER TABLESPACE fsdata READ WRITE;
      SQL> ALTER TABLESPACE fsindex READ WRITE;
    3. SQL*Plusを終了します。

  5. データベース・サービスのコンピュート・ノードで、必要なスキーマを作成してデータベースを準備します。

    1. データベース・サービスのコンピュート・ノードで、SQL*Plusを起動し、SYSTEMユーザーとしてPDBにログインします。

    2. インポートされるオブジェクトの所有者がデータベースに存在しない場合は、RESTOREの実行前に作成してください。

      SQL> CREATE USER fsowner
        2  PROFILE default
        3  IDENTIFIED BY fspass
        4  TEMPORARY TABLESPACE temp
        5  ACCOUNT UNLOCK;
  6. データベース・サービスのコンピュート・ノードで、RMANを起動し、foreignFileSpecサブ句を指定したRESTOREコマンドを使用して、クロス・プラットフォーム・バックアップをリストアします。

    1. Data Pumpダンプ・ファイル用のオペレーティング・システム・ディレクトリを作成します。

      mkdir /tmp/from_onprem
    2. RMANを起動し、SYSDBAまたはSYSBACKUP権限が付与されたユーザーとしてPDBにログインします。

      rman target username@pdb_servicename
    3. RESTOREコマンドを実行します。

      RMAN> RESTORE FOREIGN TABLESPACE fsdata,fsindex TO NEW
      2> FROM BACKUPSET '/tmp/from_onprem/fs_tbs.bck'
      3> DUMP FILE DATAPUMP DESTINATION '/tmp/datapump'
      4> FROM BACKUPSET '/tmp/from_onprem/fs_tbs.dmp';
    4. RMANを終了します。

  7. データベース・サービスのコンピュート・ノードで、表領域をREAD WRITEモードに設定します。

    1. SQL*Plusを起動し、SYSTEMユーザーとしてPDBにログインします。

    2. FSDATAおよびFSINDEX表領域をREAD WRITEに設定します。

      SQL> ALTER TABLESPACE fsdata READ WRITE;
      SQL> ALTER TABLESPACE fsindex READ WRITE;
    3. SQL*Plusを終了します。

  8. データが正常にインポートされたことを確認したら、オンプレミス・ホストからトランスポートされたバックアップ・セット・ファイルを削除できます。