この項では、Oracle Database 12cマルチテナント・アーキテクチャで導入されるプラガブル・データベースのコピーおよび移動に関連するインストールの選択項目と様々な使用例について、Oracle Application Express (Application Express)に関連付けて説明します。
Oracle Database 12cリリース1 (12.1)では、マルチテナント・アーキテクチャが導入されています。このデータベース・アーキテクチャには、ルート・コンテナCDB$ROOT
、シード・データベースPDB$SEED
および複数のプラガブル・データベース(PDB)を含むマルチテナント・コンテナ・データベース(CDB)が含まれます。各プラガブル・データベースは、Oracle Databaseリリース11gの個別のデータベース・インスタンスに相当します。ルート・コンテナCDB$ROOT
は、メタデータ・リンクまたはオブジェクト・リンクを使用してすべてのPDBにアクセス可能な共通オブジェクトを保持します。シード・データベースPDB$SEED
は、新しいデータベースをシードするために新しいPDBを作成する際に使用されます。Oracle Database 12cマルチテナント・アーキテクチャの主なメリットは、CPUやメモリーなどのデータベース・リソースをすべてのPDBで共有できることです。また、このアーキテクチャでは、アップグレード、パッチ、バックアップなどのタスクにおいて、複数のデータベースを1つのデータベースとして扱うことができます。
マルチテナント・アーキテクチャを構成している場合、デフォルトでは、Oracle Application Expressはルート・コンテナ・データベースにインストールされます。このインストールでは、ルート・コンテナCDB$ROOT
にAPEX_050000
スキーマが含まれ、Application Expressエンジンの一般的なデータベース・オブジェクト(パッケージ、ファンクション、プロシージャ、ビューなど)を格納するために使用されます。APEX_050000
スキーマは、シード・データベースPDB$SEED
にも含まれ、Application Expressエンジンの一部である表を格納するために使用されます。
新しいPDBを作成するには、Application Express表を持つAPEX_050000
スキーマを含むPDB$SEED
をコピーし、CDB$ROOT
内のAPEX_050000
スキーマに保持されている一般的なデータベース・オブジェクトにメタデータ・リンクを作成します。この方法により、Application Expressエンジンのパッケージ、ファンクション、プロシージャおよびビューの1つのコピーのみで、Application Expressエンジンの表の複数のコピーを作成することができます。各PDBは、APEX_050000
スキーマとともに、Application Expressエンジンの表のコピーを独自に保持するため、そのPDB内で定義されたApplication Expressアプリケーションのメタデータを保持できます。
ヒント: すべてのプラガブル・データベース(PDB)がOracle Application Expressを使用し、そのすべてが正確に同じリリースとパッチ・セットのOracle Application Expressを実行する必要があるホスティング企業またはインストールを除いて、大部分のユースケースでは、ルート・コンテナ・データベースからOracle Application Expressを削除することをお薦めします。詳細は、「様々なPDBへのApplication Expressの」を参照してください。 |
各PDBに異なるバージョンのOracle Application Expressを柔軟にインストールするには、コンテナ・データベースからApplication Expressをアンインストールする必要があります。コンテナ・データベースからApplication Expressを削除したら、必要に応じて、各PDB内にローカルApplication Expressをインストールできます。Application Expressをローカルにインストールする際に、Application Expressのメタデータ・リンク・オブジェクトが含まれないため、すべてのパッケージ、ビューおよび表は、Application Expressがインストールされる各PDB内のAPEX_0500000
スキーマ内に作成されます。
CDBからApplication Expressをアンインストールするには、次のステップを実行します。
ディストリビューションを解凍した場所にあるapex
ディレクトリに変更します。
SQL*Plusを起動し、Application Expressがインストールされているデータベースに、SYSDBA
ロールが指定されているSYS
として接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password:SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
apxremov.sql
を実行します。
次に例を示します。
@apxremov.sql
注意: CDBにPDBを追加した後でapexremov.sql を実行すると、すべてのPDBからApplication Expressがアンインストールされます。したがって、いずれのPDBで定義されているアプリケーションも削除されます。 |
「CDBからのApplication Expressのアンインストール」の手順に従って、コンテナ・データベースからApplication Expressを削除したら、PDBにApplication Expressをローカルにインストールできます。
Application ExpressをPDBにローカルにインストールするには、次のステップを実行します。
ディストリビューションを解凍した場所にあるapex
ディレクトリに変更します。
SQL*Plusを起動し、Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password:SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
Application ExpressをローカルにインストールするPDBにコンテナを設定します。
ALTER SESSION SET CONTAINER = <PDB_name>;
適切なインストール・オプションを選択します。
完全開発環境ではアプリケーションを開発するため、アプリケーション・ビルダー環境へのすべてのアクセス権があります。ランタイム環境ではアプリケーションは変更できず、実行することができます。詳細は、「Oracle Application Expressランタイム環境の概要」を参照してください。
使用可能なインストール・オプションは次のとおりです。
完全開発環境: 次の4つの引数を記載された順序どおりに渡し、apexins.sql
を実行します。
@apexins.sql tablespace_apex tablespace_files tablespace_temp images
各要素の意味は次のとおりです。
tablespace_apex
は、Application Expressアプリケーション・ユーザーの表領域の名前です。
tablespace_files
は、Application Expressファイル・ユーザーの表領域の名前です。
tablespace_temp
は、一時表領域または一時表領域グループの名前です。
images
は、Application Expressイメージの仮想ディレクトリです。将来的にApplication Expressのアップグレードをサポートするために、仮想イメージ・ディレクトリを/i/
と定義します。
次に例を示します。
@apexins.sql SYSAUX SYSAUX TEMP /i/
ランタイム環境: 次の4つの引数を記載された順序どおりに渡し、apxrtins.sql
を実行します。
o @apxrtins.sql tablespace_apex tablespace_files tablespace_temp images
各要素の意味は次のとおりです。
tablespace_apex
は、Application Expressアプリケーション・ユーザーの表領域の名前です。
tablespace_files
は、Application Expressファイル・ユーザーの表領域の名前です。
tablespace_temp
は、一時表領域または一時表領域グループの名前です。
images
は、Application Expressイメージの仮想ディレクトリです。将来的にApplication Expressのアップグレードをサポートするために、仮想イメージ・ディレクトリを/i/
と定義します。
次に例を示します。
@apxrtins.sql SYSAUX SYSAUX TEMP /i/
注意: 前のステップでapxremov.sql を実行する前にデータベース・パッチを適用していなかった場合、インストール・スクリプトは、Application Expressをインストールせずに即座に終了し、PDBへのApplication Expressのインストールは失敗します。このような場合は、Oracleサポートに連絡してください。 |
Oracle REST Data Servicesを使用する場合、「Application ExpressのインストールとOracle REST Data Servicesの構成」の適切なステップを完了します。
Oracle HTTP Serverを使用する場合、「Application ExpressのインストールとOracle HTTP Serverの構成」の適切なステップを完了します。
埋込みPL/SQLゲートウェイを使用している場合は、Oracleホームへのパスを渡し、apex_epg_config.sql
を実行してから、「Application Expressのインストールと埋込みPL/SQLゲートウェイの構成」の適切なステップを実行します。
参照: SQL*Plusの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
Application Expressをインストールすると、3つの新しいデータベース・アカウントが作成されます。
APEX_050000
: Application Expressのスキーマおよびメタデータを所有するアカウント。
FLOWS_FILES
: Application Expressのアップロードされたファイルを所有するアカウント。
APEX_PUBLIC_USER
- Oracle REST Data ServicesまたはOracle HTTP Serverおよびmod_plsql
を使用したApplication Expressの構成に使用する最小限の権限が付与されたアカウント。
RESTful Webサービスを構成した場合は、これらの追加アカウントが作成されます。
APEX_REST_PUBLIC_USER
- Application Expressに格納されているRESTfulサービスの定義を呼び出す際に使用されるアカウント。
APEX_LISTENER
- Application Expressに格納されているRESTfulサービスの定義を照会するために使用されるアカウント。
以前にOracle Application Expressリリース4.2をアンインストール済である場合に、CDBにApplication Expressを再インストールするには、Oracle Database 12cディストリビューションを使用してOracle Application Expressリリース4.2.4をインストールする必要があります。再インストールの後で、必要に応じて、「CDBのApplication Expressのパッチ適用またはアップグレード」の説明に従ってApplication Expressパッチを適用できます。
Application ExpressをCDBに再インストールするには、次のステップを実行します。
作業ディレクトリを、ディストリビューションを解凍した場所にあるapex
ディレクトリに変更します。
SQL*Plusを起動し、Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter password: SYS_password
適切なインストール・オプションを選択します。
完全開発環境ではアプリケーションを開発するため、アプリケーション・ビルダー環境へのすべてのアクセス権があります。ランタイム環境ではアプリケーションは変更できず、実行することができます。詳細は、「Oracle Application Expressランタイム環境の概要」を参照してください。
使用可能なインストール・オプションは次のとおりです。
完全開発環境。次の4つの引数を記載された順序どおりに渡し、apexins.sql
を実行します。
@apexins.sql tablespace_apex tablespace_files tablespace_temp images
各要素の意味は次のとおりです。
tablespace_apex
は、Oracle Application Expressアプリケーション・ユーザーの表領域の名前です。
tablespace_files
は、Application Expressファイル・ユーザーの表領域の名前です。
tablespace_temp
は一時表領域または一時表領域グループの名前です。
images
は、Application Expressイメージの仮想ディレクトリです。将来的にApplication Expressのアップグレードをサポートするために、仮想イメージ・ディレクトリを/i/
と定義します。
例:
@apexins.sql SYSAUX SYSAUX TEMP /i/
ランタイム環境。次の引数を記載された順序どおりに渡し、apxrtins.sql
を実行します。
@apxrtins.sql tablespace_apex tablespace_files tablespace_temp images
各要素の意味は次のとおりです。
tablespace_apex
は、Application Expressアプリケーション・ユーザーの表領域の名前です。
tablespace_files
は、Application Expressファイル・ユーザーの表領域の名前です。
tablespace_temp
は一時表領域または一時表領域グループの名前です。
images
は、Application Expressイメージの仮想ディレクトリです。将来的にApplication Expressのアップグレードをサポートするために、仮想イメージ・ディレクトリを/i/
と定義します。
例:
@apxrtins.sql SYSAUX SYSAUX TEMP /i/
Oracle REST Data Servicesを使用する場合、第4章「Application ExpressのインストールとOracle REST Data Servicesの構成」の適切なステップを完了します。
埋込みPL/SQLゲートウェイを使用している場合は、第5章「Application Expressのインストールと埋込みPL/SQLゲートウェイの構成」の適切なステップを実行します。
Oracle HTTP Serverを使用する場合、第6章「Application ExpressのインストールとOracle HTTP Serverの構成」の適切なステップを完了します。
参照: SQL*Plusの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
Application Expressをインストールすると、3つの新しいデータベース・アカウントが作成されます。
APEX_050000
: Application Expressのスキーマおよびメタデータを所有するアカウント。
FLOWS_FILES
: Application Expressのアップロードされたファイルを所有するアカウント。
APEX_PUBLIC_USER
- Oracle REST Data ServicesまたはOracle HTTP Serverおよびmod_plsql
を使用したApplication Expressの構成に使用する最小限の権限が付与されたアカウント。
RESTful Webサービスを構成した場合は、これらの追加アカウントが作成されます。
APEX_REST_PUBLIC_USER
- Application Expressに格納されているRESTfulサービスの定義を呼び出す際に使用されるアカウント。
APEX_LISTENER
- Application Expressに格納されているRESTfulサービスの定義を照会するために使用されるアカウント。
このセクションでは、ターゲット・データベースでルート・コンテナCDB$ROOT
にApplication Expressがインストールされている例(デフォルトのインストール・オプション)について説明します。接続するデータベースの元の場所、および元のデータベースでApplication Expressが構成されていた方法について、複数の例があることに注意してください。
以前のリリースのOracle Databaseからアップグレードする場合は、Oracle Database 12c非CDB (またはスタンドアロン・データベース)にアップグレードしてから、ご使用のCDBにデータベースを接続する必要があります。また、非CDBのOracle Database 12cを構成済である場合は、そのデータベースをCDBに接続できます。いずれの場合も、元のデータベースは、Application Expressがインストールされており、以前はPDBではありませんでした。
ご使用のオペレーティング・システムの『Oracle Databaseインストレーション・ガイド』で説明されているとおり、スタンドアロン・データベースに接続するには、$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sqlスクリプト
を実行する必要があります。このスクリプトによって、ローカル・オブジェクトではなく、必要なメタデータ・リンク・オブジェクトが作成され、Application Expressを含む一般的なすべてのデータベース・オプションのデータベース・オブジェクトが再コンパイルされます。
Application Expressをインストールした後に、「Application ExpressのインストールとOracle REST Data Servicesの構成」、「Application Expressのインストールと埋込みPL/SQLゲートウェイの構成」または「Application ExpressのインストールとOracle HTTP Serverの構成」での説明に従って、WebリスナーをPDB用に構成する必要があります。
元のデータベース(現在のPDB)にインストールされているApplication Expressのバージョンが、ターゲット・データベースのルート・コンテナにインストールしたApplication Expressのバージョンと異なる場合は、PDBをオープンしようとするとエラーが発生します。Application Expressのバージョンに互換性を持たせる方法の詳細は、「互換性のないApplication Expressバージョンでの作業」を参照してください。
元のCDBのルート・コンテナにApplication Expressがインストールされている既存のOracle Database 12cからPDBをコピーまたは移動する場合、「Application ExpressのインストールとOracle REST Data Servicesの構成」、「Application Expressのインストールと埋込みPL/SQLゲートウェイの構成」または「Application ExpressのインストールとOracle HTTP Serverの構成」での説明に従ってWebリスナーをPDB用に構成する以外に、追加のステップを実行する必要はありません。
Application Expressリリース5.0がインストールされている場合は、接続元のPDB内のAPEX_050000
スキーマにメタデータ・リンク・オブジェクトが定義済であるため、ターゲットCDB内のメタデータ・リンク・オブジェクトに対してエラーなしでコンパイルされます。
元のデータベースにインストールされているApplication Expressのバージョンが、ターゲット・データベースのルート・コンテナにインストールしたApplication Expressのバージョンと異なる場合は、PDBをオープンしようとするとエラーが発生します。Application Expressのバージョンに互換性を持たせる方法の詳細は、「互換性のないApplication Expressバージョンでの作業」を参照してください。
Application Expressがルート・コンテナではなく、ローカルにインストールされている既存のOracle Database 12cからPDBをコピーまたは移動するには、PDBをエラーなしでオープンできるように次のステップを実行する必要があります。
Application Expressリリース5.0がインストールされている場合、接続元のPDB内のAPEX_050000
スキーマには、Application Expressのすべてのデータベース・オブジェクトが含まれますが、メタデータ・リンク・オブジェクトは含まれません。このため、$ORACLE_HOME/rdbms/admin/apex_to_common.sql
を実行して一般的なオブジェクトを削除し、パッケージ、ビューおよびその他に対するメタデータ・リンクを作成する必要があります。
ローカル・オブジェクトをPDBのメタデータ・リンクで置き換えるには、次のステップを実行します。
作業ディレクトリを$ORACLE_HOME/rdbms/admin
に変更します。
SQL*Plusを起動し、Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password:SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
次のように、コンテナを、構成するPDBに設定します。
ALTER SESSION SET CONTAINER = <PDB_name>;
apex_to_common.sql
を実行します。次に例を示します。
@apex_to_common.sql
元のデータベースにインストールされているApplication Expressのバージョンが、ターゲット・データベースのルート・コンテナにインストールしたApplication Expressのバージョンと異なる場合は、PDBをオープンしようとするとエラーが発生します。Application Expressのバージョンに互換性を持たせる方法の詳細は、「互換性のないApplication Expressバージョンでの作業」を参照してください。
非CDBを接続する場合、あるいは他のCDBからPDBをコピーまたは移動する場合に、元のデータベースまたはPDBにApplication Expressがインストールされていないと、ターゲット・データベースでPDBをオープンしようとした際にアラート・ログに警告が発生します。
この例では、元のデータベースまたは接続元のPDBに、Application Expressスキーマ(Application Expressリリース5.0ではAPEX_050000
)が存在しません。PDBを問題なくオープンして新しいPDB内でApplication Expressを実行するには、元のデータベースまたはPDBにApplication Expressをインストールしてから、ターゲット・データベースへの接続を試行する必要があります。元のデータベースまたはPDBにインストールするApplication Expressのバージョンは、ターゲット・データベースにインストールしたバージョンと同じである必要があります。
Application Expressのバージョンがルート・コンテナCDB$ROOT
とPDBで異なる場合は、PDBをオープンするたびにエラーが発生し、PDB内での通常のデータベース操作が妨げられます。バージョンの互換性が確保されるまで、PDBは、RESTRICTED SESSION権限を持つユーザーによって制限モードでのみオープンできます。
Application Expressのバージョンがルート・コンテナよりもPDBがより後のマイナー・リリース・バージョンの場合(たとえば、PDBにApplication Expressリリース4.2.6が含まれ、CDBにApplication Expressリリース4.2.5が含まれる場合)、エラーが発生することなくPDBをオープンするには、ルート・コンテナのApplication Expressのバージョンにパッチを適用する必要があります。PDBのApplication Expressのメジャー・バージョンがCDBのバージョンより高い場合(たとえばPDBがApplication Expressリリース5.0で、CDBがApplication Expressリリース4.2)、エラーが発生することなくPDBを開くためには、CDBのApplication Expressのバージョンをアップグレードする必要があります。
ルート・コンテナのApplication Expressにパッチを適用するには、次のステップを実行します。
My Oracle Supportから適切なパッチをダウンロードします。
解凍してインストール・ファイルを抽出します。
作業ディレクトリを、インストール・ファイルを抽出したディレクトリに変更します。
SQL*Plusを起動し、Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password:SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
たとえば、apxpatch_con.sql
を実行します。
@apxpatch_con.sql
パッチ・セット・ノートの説明に従って、使用しているWebサーバーに基づいてイメージ・ディレクトリを更新します。たとえば、埋込みPL/SQLゲートウェイを使用している場合は、apxldimg_con.sql
を実行します。
@apxldimg_con.sql
Application Expressのマイナー・バージョンがルート・コンテナよりもPDBで低い場合(たとえばPDBがApplication Expressリリース4.2.0で、CDBがApplication Expressリリース4.2.6の場合)、PDBのApplication Expressのバージョンにパッチを適用する必要があります。PDBのApplication Expressのメジャー・バージョンがルート・コンテナよりも低い場合(たとえばPDBがApplication Expressリリース4.2で、CDBがApplication Expressリリース5.0の場合)、PDBのApplication Expressのバージョンをアップグレードする必要があります。
PDBのApplication Expressにパッチを適用するには、次のステップを実行します。
My Oracle Supportから適切なパッチをダウンロードします。
解凍してインストール・ファイルを抽出します。
作業ディレクトリを、インストール・ファイルを抽出したディレクトリに変更します。
SQL*Plusを起動し、Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password:SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
次の例に示すように、catcon.plを使用してapxpatch.sqlを実行します。
host &OH_HOME/perl/bin/perl -I &OH_HOME/rdbms/admin &OH_HOME/rdbms/admin/catcon.pl -b apxpatch -c '<PDB_name>' apxpatch.sql
各要素の意味は次のとおりです。
&OH_HOME
は、Oracleホームのフルパスを表します。
<PDB_name
>は、パッチを適用しているPDBの名前です。
パッチ・セット・ノートの説明に従って、使用しているWebサーバーに基づいてイメージ・ディレクトリを更新します。たとえば、埋込みPL/SQLゲートウェイを使用している場合は、apex_epg_config.sql
を実行します。
ALTER SESSION SET CONTAINER = <PDB_name>;
@apex_epg_config.sql
PDBのApplication Expressをアップグレードするには、次のステップを実行します。
解凍してインストール・ファイルを抽出します。
作業ディレクトリを、インストール・ファイルを抽出したディレクトリに変更します。
SQL*Plusを起動し、Application Expressがインストールされているデータベースに、SYSDBAロールが指定されているSYSとして接続します。次に例を示します。
Windowsの場合:
SYSTEM_DRIVE:\ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password:SYS_password
UNIXおよびLinuxの場合:
$ sqlplus /nolog SQL> CONNECT SYS as SYSDBA Enter password: SYS_password
次の例のようなcatcon.plを使用して、apexins_nocdb.sql
またはapxrtins_nocdb.sql
を実行します。
host &OH_HOME/perl/bin/perl -I &OH_HOME/rdbms/admin &OH_HOME/rdbms/admin/catcon.pl -b apexins -c '<PDB_name>' apexins_nocdb.sql SYSAUX SYSAUX TEMP /i/
各要素の意味は次のとおりです。
&OH_HOME
は、Oracleホームのフルパスを表します。
<PDB_name
>は、パッチを適用しているPDBの名前です。
パッチ・セット・ノートの説明に従って、使用しているWebサーバーに基づいてイメージ・ディレクトリを更新します。
このセクションの例では、「CDBからのApplication Expressのアンインストール」の説明に従って、Application Expressを明示的に削除することで、ルート・コンテナCDB$ROOT
にApplication Expressがインストールされていない場合について説明します。このような場合は、オプションで、各PDBにローカルApplication Expressを個別にインストールできます。Application ExpressをPDBにインストールした場合、ローカルにインストールされたとみなされ、メタデータ・リンク・オブジェクトは定義されません。接続中のデータベースの元の場所、および元のデータベースでApplication Expressが構成されていた方法について、複数の例があります。
以前のリリースのOracle Databaseからアップグレードする場合は、Oracle Database 12c非CDB (またはスタンドアロン・データベース)にアップグレードしてから、ご使用のCDBにデータベースを接続する必要があります。また、非CDBのOracle Database 12cを構成済である場合は、そのデータベースをCDBに接続できます。いずれの場合も、元のデータベースは、Application Expressがインストールされており、以前はPDBではありませんでした。
ご使用のオペレーティング・システムの『Oracle Databaseインストレーション・ガイド』で説明されているとおり、スタンドアロン・データベースに接続するには、$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sqlスクリプト
を実行する必要があります。このスクリプトによって、(ローカル・オブジェクトではなく)必要なメタデータ・リンク・オブジェクトが作成され、一般的なすべてのデータベース・オプションのデータベース・オブジェクトが再コンパイルされます。ただし、ルート・コンテナからApplication Expressが削除されているため、スクリプトを実行しても、いずれのApplication Expressオブジェクトにもメタデータ・リンクが作成されません。スクリプトはApplication Expressのインストールを元のデータベースから変更せず、使用するWebリスナーのタイプに応じて「Application ExpressのインストールとOracle REST Data Servicesの構成」、「Application Expressのインストールと埋込みPL/SQLゲートウェイの構成」または"Application ExpressのインストールとOracle HTTP Serverの構成」で説明されているとおりにWebリスナーを構成する以外に、追加の手順は必要ありません。
元のCDBのルート・コンテナにApplication Expressがインストールされている既存のOracle Database 12cからPDBをコピーまたは移動する場合は、PDBをオープンしようとするたびにエラーが発生します。このエラーは、ターゲットのルート・コンテナにApplication Expressが含まれないために、元のPDBに含まれる、元のルート・コンテナのオブジェクトへのメタデータ・リンクを再コンパイルできないことが原因で発生します。PDBをオープンするには、PDBからApplication Expressを削除するか、ターゲットのルート・コンテナにApplication Expressをインストールする必要があります。ルート・コンテナにApplication Expressをインストールするには、PDBがインストールされていない状態である必要があります。詳細は、Oracleサポートに連絡してください。
(CDBでなく)元のPDBにローカルのApplication Expressがインストールされている既存のOracle Database 12cからPDBをコピーまたは移動する場合、「Application ExpressのインストールとOracle REST Data Servicesの構成」、「Application Expressのインストールと埋込みPL/SQLゲートウェイの構成」または「Application ExpressのインストールとOracle HTTP Serverの構成」での説明に従ってWebリスナーをPDB用に構成する以外に、追加のステップを実行する必要はありません。
Application Expressリリース5.0がインストールされている場合、接続元のPDB内のAPEX_050000
スキーマには、ローカルに定義されたApplication Expressのすべてのオブジェクトが含まれますが、メタデータ・リンクは含まれません。