4.5 ターゲットCDBのルート・コンテナにApplication Expressが含まれない場合のPDBの接続
この項で示す例では、CDBからのApplication Expressのアンインストールで説明されているとおりにApplication Expressが明示的に削除されたことでルート・コンテナCDB$ROOT
にApplication Expressがインストールされていない場合について説明します。
このような場合は、オプションで、各PDBにローカルApplication Expressを個別にインストールできます。Application ExpressをPDBにインストールした場合、ローカルにインストールされたとみなされ、メタデータ・リンク・オブジェクトは定義されません。接続中のデータベースの元の場所、および元のデータベースでApplication Expressが構成されていた方法について、複数の例があります。
- 例1: Application Expressを含む非CDBの接続
Application Expressを含む非CDBを接続します。 - 例2: 他のCDBからの共通のApplication Expressを含むPDBの接続
他のCDBからApplication Expressを含むPDBを接続します。 - 例3: 他のCDBからのローカルApplication Expressを含むPDBの接続
他のCDBからローカルにApplication Expressを含むPDBを接続します。 - 例4: Application Expressを含まない非CDBまたはPDBの接続
Application Expressがインストールされていない場合は非CDBまたはPDBを接続します。
4.5.1 例1: Application Expressを含む非CDBの接続
Application Expressを含む非CDBを接続します。
以前のリリースの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リスナーのタイプに応じてWebリスナーを構成する以外は追加ステップを実行する必要はありません。
4.5.2 例2: 他のCDBからの共通のApplication Expressを含むPDBの接続
他のCDBからApplication Expressを含むPDBを接続します。
元のCDBのルート・コンテナにApplication Expressがインストールされている既存のOracle Database 12cからPDBをコピーまたは移動する場合は、PDBをオープンしようとするたびにエラーが発生します。このエラーは、ターゲットのルート・コンテナにApplication Expressが含まれないために、元のPDBに含まれる、元のルート・コンテナのオブジェクトへのメタデータ・リンクを再コンパイルできないことが原因で発生します。PDBをオープンするには、PDBからApplication Expressを削除するか、ターゲットのルート・コンテナにApplication Expressをインストールする必要があります。Application ExpressがローカルにインストールされているPDBが含まれる場合、ルート・コンテナにApplication Expressをインストールすることはオラクル社ではサポートしていません。
4.5.3 例3: 他のCDBからのローカルApplication Expressを含むPDBの接続
他のCDBからローカルApplication Expressを含むPDBを接続します。
(CDBではなく)元のPDBにローカルApplication Expressがインストールされている既存のOracle Database 12c以降からPDBをコピーまたは移動するには、使用しているWebリスナーのタイプに応じて、PDBにWebリスナーを構成する以外は追加ステップを実行する必要はありません。
この例では、前提として、Oracle Application Expressリリース20.2がインストールされており、接続するPDB内のAPEX_200200
スキーマには、ローカルに定義されたすべてのApplication Expressオブジェクトがすでに含まれており、メタデータ・リンクは含まれていません。