9.1 APEX以外のユーザーのデータのエクスポートおよびインポート

このトピックでは、Oracle Application Express (APEX)が11.2 XEデータベースで使用されていないときに、Oracle Database XE 11.2とXE 18cデータベースの間でデータをエクスポートおよびインポートする方法について説明します。

データのエクスポート

  1. データを11.2 XEデータベースからエクスポートするには、次の手順を実行します。

    1. ローカル・ファイル・システムに、DUMP_DIRディレクトリ・オブジェクトのディレクトリ/dump_folderを作成します。

    2. SYSDBA権限を使用してユーザーSYSとして11.2 XEデータベースに接続します。

    3. ディレクトリ・オブジェクトDUMP_DIRを作成し、DUMP_DIRディレクトリに対するREADおよびWRITE権限をSYSTEMユーザーに付与します。

      sqlplus / AS SYSDBA
      SQL> CREATE DIRECTORY DUMP_DIR AS '/dump_folder';
      SQL> GRANT READ, WRITE ON DIRECTORY DUMP_DIR TO SYSTEM;
      
    4. 11.2 XEデータベースからダンプ・フォルダにデータをエクスポートします。

      expdp system/system_password full=Y EXCLUDE=SCHEMA:\"LIKE \'APEX_%\'\",SCHEMA:\"LIKE \'FLOWS_%\'\" directory=DUMP_DIR dumpfile=DB11G.dmp logfile=expdpDB11G.log
      
  2. Oracle Database XE 18cのインストールが同じシステムで計画されている場合は、XE 11.2をアンインストールします。詳細は、Oracle Database XEのアンインストールを参照してください

  3. Oracle Database XE 18cをインストールします。

データのインポート

  1. データを18c XEデータベースにインポートするには、次の手順を実行します。

    1. SYSDBA権限を使用してユーザーSYSとして18c XEデータベースに接続します。

    2. ディレクトリ・オブジェクトDUMP_DIRを作成し、ディレクトリに対するREADおよびWRITE権限をSYSTEMユーザーに付与します。

      sqlplus / AS SYSDBA
      SQL> ALTER SESSION SET CONTAINER=XEPDB1;
      SQL> CREATE DIRECTORY DUMP_DIR AS '/dump_folder';
      SQL> GRANT READ, WRITE ON DIRECTORY DUMP_DIR TO SYSTEM;
      
    3. データをダンプ・フォルダから18c XEデータベースにインポートします。

      impdp  system/system_password@localhost/xepdb1 full=Y EXCLUDE=SCHEMA:\"LIKE \'APEX_%\'\",SCHEMA:\"LIKE \'FLOWS_%\'\" directory=DUMP_DIR dumpfile=DB11G.dmp logfile=impdpDB11G.log
      
    次のエラーは無視できます。
    • ORA-39083: オブジェクト型TABLESPACE:"SYSAUX"の作成がエラーで失敗しました

    • ORA-31685: 権限が不十分なため、オブジェクト型USER:"SYS"が失敗しました。

    • ORA-39083: オブジェクト型PROCACT_SYSTEMの作成がエラーで失敗しました

    • ORA-01917: ユーザーまたはロール'APEX_040000'は存在しません

    • ORA-31684 "すでに存在します"エラー