5.5 ターゲットCDBのルート・コンテナにAPEXが含まれない場合のPDBの接続
この項のシナリオでは、「CDBからのAPEXのアンインストール」の説明に従ってAPEXを明示的に削除したことでルート・コンテナCDB$ROOT
にOracle APEXがインストールされていない場合について説明します。
このような場合は、オプションで、各PDBにAPEXを個別にインストールできます。APEXをPDBにインストールした場合は、ローカルにインストールされたとみなされるため、それにはメタデータ・リンク・オブジェクトはありません。接続するデータベースの元の場所がどこであるかや、元のデータベースでAPEXがどのように構成されていたかについては、複数のシナリオがあります。
- シナリオ1: APEXがローカルにインストールされた非CDBまたはPDBの接続
Oracle APEXがローカルにインストールされた非CDBまたはPDBを接続します。 - シナリオ2: 他のCDBからの共通のAPEXを含むPDBの接続
他のCDBからのOracle APEXを含むPDBを接続します。 - シナリオ3: 他のCDBからのローカルAPEXを含むPDBの接続
他のCDBからのローカルOracle APEXを含むPDBを接続します。 - シナリオ4: APEXを含まない非CDBまたはPDBの接続
Oracle APEXがインストールされていない場合に非CDBまたはPDBを接続します。
5.5.1 シナリオ1: ローカルにインストールされたAPEXを含む非CDBまたはPDBの接続
Oracle APEXがローカルにインストールされた非CDBまたはPDBを接続します。
以前のリリースのOracle Databaseからアップグレードする場合は、非CDB (またはAPEXがローカルにインストールされたPDB)でOracle Database 12c以降にアップグレードしてから、ご使用のCDBにそのデータベースを接続する必要があります。または、非CDB (またはAPEXがローカルにインストールされたPDB)のOracle Database 12c以降を構成してある場合は、そのデータベースをCDBに接続できます。どちらの場合も、元のデータベースは、APEXがインストールされており、以前はPDBではありませんでした。
ご使用のオペレーティング・システムの『Oracle Databaseインストレーション・ガイド』で説明されているとおり、スタンドアロン・データベースに接続するには、$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql
スクリプトを実行する必要があります。このスクリプトによって、(ローカル・オブジェクトではなく)必要なメタデータ・リンク・オブジェクトが作成され、一般的なすべてのデータベース・オプションのデータベース・オブジェクトが再コンパイルされます。ただし、ルート・コンテナからAPEXが削除されているため、このスクリプトを実行しても、どのAPEXオブジェクトにもメタデータ・リンクは作成されません。このスクリプトでは、元のデータベースからのAPEXインストールが変更されることはなく、Webサーバーの構成以外に、さらに他のステップが必要になることありません。
5.5.2 シナリオ2: 他のCDBからの共通のAPEXを含むPDBの接続
他のCDBからOracle APEXを含むPDBを接続します。
元のCDBのルート・コンテナにAPEXがインストールされている既存のOracle Database 12cからPDBをコピーまたは移動する場合は、そのPDBをオープンしようとするたびにエラーが発生します。このエラーは、ターゲットのルート・コンテナにAPEXが含まれていないために、元のPDBに含まれている、元のルート・コンテナ内のオブジェクトへのメタデータ・リンクを再コンパイルできないことが原因で発生します。PDBをオープンするには、PDBからAPEXを削除するか、ターゲットのルート・コンテナにAPEXをインストールする必要があります。Oracleでは、APEXがローカルにインストールされたPDBが含まれている場合のルート・コンテナへのAPEXのインストールはサポートされていません。
5.5.3 シナリオ3: 他のCDBからのローカルAPEXを含むPDBの接続
他のCDBからローカルOracle APEXを含むPDBを接続します。
元のPDB(CDB内ではない)にローカルAPEXがインストールされている、既存のOracle Database 12c以降からPDBをコピーまたは移動するには、そのPDBでWebサーバーを構成する以外に、さらに他のステップを実行する必要はありません。
このシナリオでは、APEXリリース22.2がインストールされているものとし、接続するPDB内のAPEX_220200
スキーマにはすでにすべてのAPEXオブジェクトがローカルで定義されており、メタデータ・リンクはないと仮定しています。