機械翻訳について

RMANトランスポータブル表領域とデータ・ポンプ

この方法は、オンプレミス・プラットフォームがリトル・エンディアンで、オンプレミス・データベースとOracle Database Cloud Serviceデータベースのデータベース・キャラクタ・セットに互換性がある場合にのみ使用できます。

この方法を使用すると、データ・ポンプ・トランスポータブル表領域方法では必要な、表領域をREAD ONLYモードにすることが不要になります。

RMANトランスポータブル表領域とデータ・ポンプ方法を使用して、オンプレミスのソース・データベースをOracle Database Cloud Service上のデータベース・デプロイメントに移行するには、次のタスクを実行します。

  1. オンプレミス・データベース・ホストで、RMANを起動し、トランスポータブル表領域セットを作成します。

  2. セキュア・コピー・ユーティリティを使用して、データ・ポンプ・エクスポートのダンプ・ファイルおよび表領域データファイルをDatabase Cloud Serviceの計算ノードに転送します。

  3. Database Cloud Serviceの計算ノードで、表領域インポート用にデータベースを準備します。

  4. Database Cloud Service計算ノードでData Pump Importを起動し、データベースに接続します。 TRANSPORT_DATAFILESオプションを使用して、データをデータベースにインポートします。

  5. データが正常にインポートされたことを確認したら、ダンプ・ファイルを削除できます。

RMANトランスポータブル表領域とデータ・ポンプ: 例

この例では、オンプレミスOracle Databaseの表領域をOracle Database Cloud Serviceデータベースに移行するために必要なタスクを順を追って示します。

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

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

  1. オンプレミス・データベース・ホストで、RMANを起動し、トランスポータブル表領域セットを作成します。

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

      $ mkdir /u01/app/oracle/admin/orcl/rman_transdest
      
    2. オンプレミス・データベース・ホストで、RMAN補助インスタンス・ファイル用のオペレーティング・システム・ディレクトリを作成します。

      $ mkdir /u01/app/oracle/admin/orcl/rman_auxdest
      
    3. RMANを起動し、SYSTEMユーザーとしてログインします。 要求されたら、SYSTEMユーザーのパスワードを入力します。

      $ rman target system
      
    4. TRANSPORT TABLESPACEコマンドを実行します。

      RMAN> TRANSPORT TABLESPACE fsdata, fsindex
      2> TABLESPACE DESTINATION '/u01/app/oracle/admin/orcl/rman_transdest'
      3> AUXILIARY DESTINATION '/u01/app/oracle/admin/orcl/rman_auxdest';
      
    5. RMANをログアウトします。

    6. 必要に応じて、TABLESPACE DESTINATIONに指定したディレクトリに移動し、TRANSPORT TABLESPACE操作で作成したファイルを確認します。

      $ cd /u01/app/oracle/admin/orcl/rman_transdest
      $ ls
      dmpfile.dmp  fsdata01.dbf  fsindex01.dbf  impscrpt.sql
      
  2. セキュア・コピー・ユーティリティを使用して、データ・ポンプ・エクスポートのダンプ・ファイルおよび表領域データファイルをDatabase Cloud Serviceの計算ノードに転送します。

    この例では、ダンプ・ファイルは/u01ディレクトリにコピーされます。 転送するファイルのサイズに基づいて適切な場所を選択します。

    1. Database Cloud Serviceの計算ノードで、ダンプ・ファイル用のディレクトリを作成します。

      $ mkdir /u01/app/oracle/admin/ORCL/dpdump/from_onprem
      
    2. scpコマンドを使用してファイルをコピーする前に、Database Cloud Serviceの計算ノードにアクセスできるようにするSSH秘密鍵がオンプレミス・ホストで使用できることを確認します。

    3. オンプレミス・データベース・ホストで、SCPユーティリティを使用してダンプ・ファイルおよびトランスポータブル・セットのすべてのデータファイルをDatabase Cloud Serviceの計算ノードに転送します。

      $ scp -i private_key_file \
      /u01/app/oracle/admin/orcl/rman_transdest/dmpfile.dmp \
      oracle@IP_address_DBaaS_VM:/u01/app/oracle/admin/ORCL/dpdump/from_onprem
      
      $ scp -i private_key_file \
      /u01/app/oracle/admin/orcl/rman_transdest/fsdata01.dbf \
      oracle@IP_address_DBaaS_VM:/u02/app/oracle/oradata/ORCL
      
      $ scp -i private_key_file \
      /u01/app/oracle/admin/orcl/rman_transdest/fsindex01.dbf \
      oracle@IP_address_DBaaS_VM:/u02/app/oracle/oradata/ORCL
      
  3. Database Cloud Serviceの計算ノードで、表領域インポート用にデータベースを準備します。

    1. Database Cloud Service計算ノードでSQL*Plusを起動し、SYSTEMユーザーとしてデータベースにログインします。

    2. ディレクトリ・オブジェクトをDatabase Cloud Serviceデータベースに作成します。

      SQL> CREATE DIRECTORY dp_from_onprem AS '/u01/app/oracle/admin/ORCL/dpdump/from_onprem';
      
    3. インポートされるオブジェクトの所有者がデータベースに存在しない場合は、インポートを実行する前に作成します。 トランスポータブル表領域モードのインポートでは、ユーザーは作成されません。

      SQL> CREATE USER fsowner
        2  PROFILE default
        3  IDENTIFIED BY fspass
        4  TEMPORARY TABLESPACE temp
        5  ACCOUNT UNLOCK;
      
  4. Database Cloud Service計算ノードでData Pump Importを起動し、データベースに接続します。

    TRANSPORT_DATAFILESオプションを使用して、データをデータベースにインポートします。

    $ impdp system DIRECTORY=dp_from_onprem DUMPFILE='dmpfile.dmp' \
    TRANSPORT_DATAFILES='/u02/app/oracle/oradata/ORCL/fsdata01.dbf', \
    '/u02/app/oracle/oradata/ORCL/fsindex01.dbf'
    
  5. データが正常にインポートされたことを確認したら、dmpfile.dmpダンプ・ファイルを削除できます。