117 DBMS_PDB_ALTER_SHARING
アプリケーションが事前インストールされているアプリケーション・コンテナで、DBMS_PDB_ALTER_SHARING
パッケージは、データベース・オブジェクトをアプリケーション共通オブジェクトとして設定するか、またはデータベース・オブジェクトがアプリケーション共通オブジェクトではないことを指定するためのインタフェースを提供します。
ノート:
このパッケージは、DBMS_PDB
パッケージのサブプログラムのサブセットを提供します。DBMS_PDB
パッケージに対するEXECUTE
権限を持たないユーザーには、このパッケージでこれらのサブプログラムを実行するためのEXECUTE
権限を付与できます。
参照:
-
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。
-
プロトコル・ポートとDNSマッピングの構成については、『Oracle XML DB開発者ガイド』を参照してください。
-
PDBの作成の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
-
マルチテナント環境内に監査ポリシーを作成する方法については、『Oracle Databaseセキュリティ・ガイド』を参照してください。
この章のトピックは、次のとおりです:
117.1 DBMS_PDB_ALTER_SHARINGの概要
このパッケージのサブプログラムでは、アプリケーション・コンテナで、データベース・オブジェクトをデータリンク・オブジェクト、拡張データリンク・オブジェクトまたはメタデータリンク・オブジェクトのいずれかのタイプのアプリケーション共通オブジェクトに設定できます。
データリンク・アプリケーション共通オブジェクトは、アプリケーション・コンテナ内のすべてのアプリケーションPDBによってアクセスおよび変更できるアプリケーション・ルートにデータを格納します。拡張データリンク・オブジェクトの場合、各アプリケーションPDBは、アプリケーション・ルートの共通データを共有しながら特定の独自データを作成できます。したがって、拡張データリンク・オブジェクトの場合、アプリケーション・ルートに格納されたデータのみがすべてのアプリケーションPDBで共通のデータとなります。メタデータリンク・アプリケーション共通オブジェクトは、表などの特定のオブジェクトのメタデータをアプリケーション・ルートに格納するため、アプリケーション・コンテナ内のコンテナは同じオブジェクト構造を持ちますが、データは異なります。このパッケージには、データベース・オブジェクトがアプリケーション共通オブジェクトではないことを指定するプロシージャも含まれます。
このパッケージのサブプログラムは、次の場合に使用できます。
通常、このパッケージのサブプログラムは次の場合に使用されます。
-
PDBにインストールされたアプリケーションがアプリケーション・コンテナに移行される場合。アプリケーションは、アプリケーション・ルートまたはアプリケーションPDBに移行できます。たとえば、Oracle Database 12cリリース1 (12.1) CDBに接続中のPDBにインストールされているアプリケーションを、Oracle Database 12cリリース2 (12.2) CDBのアプリケーション・コンテナに移行できます。
-
アプリケーション共通オブジェクトを設定できないインストール・プログラムを使用して、アプリケーションがアプリケーション・ルートにインストールされている場合。
参照:
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。
117.2 DBMS_PDB_ALTER_SHARINGのセキュリティ・モデル
このパッケージは、DBMS_PDB
パッケージのサブプログラムのサブセットを提供します。DBMS_PDB
パッケージに対するEXECUTE
権限を持たないユーザーには、このパッケージでこれらのサブプログラムを実行するためのEXECUTE
権限を付与できます。
このパッケージのセキュリティは、次のいずれかの方法で制御できます。
-
選択したユーザーまたはロールに、このパッケージの
EXECUTE
を付与する方法 -
選択したユーザーまたはロールに、
EXECUTE_CATALOG_ROLE
を付与する方法
パッケージのサブプログラムをストアド・プロシージャ内から実行する場合、そのサブプログラムを実行するユーザーには、パッケージのEXECUTE
権限を直接付与する必要があります。ロールを通して付与することはできません。
117.3 DBMS_PDB_ALTER_SHARINGサブプログラムの要約
この表は、DBMS_PDB_ALTER_SHARING
パッケージのサブプログラムについて簡単に説明しています。
表117-1 DBMS_PDB_ALTER_SHARINGサブプログラム
サブプログラム | 説明 |
---|---|
データベース・オブジェクトがアプリケーション共通オブジェクトではないことを指定します。 |
|
データベース・オブジェクトをデータリンク・アプリケーション共通オブジェクトに設定します。 |
|
データベース・オブジェクトを拡張データリンク・アプリケーション共通オブジェクトに設定します。 |
|
データベース・オブジェクトをメタデータリンク・アプリケーション共通オブジェクトに設定します。 |
|
アプリケーション・コンテナでプロファイルをアプリケーション共通プロファイルとして設定します。 |
|
アプリケーション・コンテナでロールをアプリケーション共通ロールとして設定します。 |
|
アプリケーション・コンテナでローカル・ユーザーをアプリケーション共通ユーザーとして設定します。 |
117.3.1 REMOVE_LINKプロシージャ
このプロシージャは、データベース・オブジェクトがアプリケーション共通オブジェクトではないことを指定します。アプリケーション・コンテナ内で、アプリケーション共通オブジェクトは複数のコンテナ間で共有されます。
構文
DBMS_PDB_ALTER_SHARING.REMOVE_LINK ( schema_name IN VARCHAR2, object_name IN VARCHAR2, namespace IN NUMBER, edition_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表117-2 REMOVE_LINKプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
データベース・オブジェクトを所有するスキーマの名前。 |
|
データベース・オブジェクトの名前。 |
|
データベース・オブジェクトのネームスペース。
|
|
データベース・オブジェクトのエディションの名前。 |
参照:
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。
117.3.2 SET_DATA_LINKEDプロシージャ
このプロシージャは、データベース・オブジェクトをデータリンク・アプリケーション共通オブジェクトに設定します。アプリケーション・コンテナ内で、データリンク・アプリケーション共通オブジェクトはアプリケーション・ルートのみにデータを格納し、格納されたデータにはそのアプリケーション・コンテナ内のすべてのアプリケーションPDBからアクセスできます。データリンク・アプリケーション共通オブジェクトのデータは、アプリケーション・ルートでのみ変更できます。
このプロシージャを使用して、PDBにインストールされているアプリケーションをアプリケーション・コンテナに移行するときに、データリンク・アプリケーション共通オブジェクトを設定できます。アプリケーションは、アプリケーション・ルートまたはアプリケーションPDBに移行できます。たとえば、Oracle Database 12cリリース1 (12.1) CDBに接続中のPDBにインストールされているアプリケーションを、Oracle Database 12cリリース2 (12.2) CDBのアプリケーション・コンテナに移行できます。
構文
DBMS_PDB_ALTER_SHARING.SET_DATA_LINKED ( schema_name IN VARCHAR2, object_name IN VARCHAR2, namespace IN NUMBER, edition_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表117-3 SET_DATA_LINKEDプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
データベース・オブジェクトを所有するスキーマの名前。 |
|
データベース・オブジェクトの名前。 |
|
データベース・オブジェクトのネームスペース。
|
|
データベース・オブジェクトのエディションの名前。 |
参照:
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。
117.3.3 SET_EXT_DATA_LINKEDプロシージャ
このプロシージャは、データベース・オブジェクトを拡張データリンク・アプリケーション共通オブジェクトに設定します。拡張データリンク・オブジェクトの場合、アプリケーション・コンテナ内の各アプリケーションPDBは、アプリケーション・ルートの共通データを共有しながら特定の独自データを作成できます。したがって、アプリケーション・ルートに格納されるデータのみがすべてのアプリケーションPDBに共通です。
このプロシージャを使用して、PDBにインストールされているアプリケーションをアプリケーション・コンテナに移行するときに、拡張データリンク・アプリケーション共通オブジェクトを設定できます。アプリケーションは、アプリケーション・ルートまたはアプリケーションPDBに移行できます。たとえば、Oracle Database 12cリリース1 (12.1) CDBに接続中のPDBにインストールされているアプリケーションを、Oracle Database 12cリリース2 (12.2) CDBのアプリケーション・コンテナに移行できます。
構文
DBMS_PDB_ALTER_SHARING.SET_EXT_DATA_LINKED ( schema_name IN VARCHAR2, object_name IN VARCHAR2, namespace IN NUMBER, edition_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表117-4 SET_EXT_DATA_LINKEDプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
データベース・オブジェクトを所有するスキーマの名前。 |
|
データベース・オブジェクトの名前。 |
|
データベース・オブジェクトのネームスペース。
|
|
データベース・オブジェクトのエディションの名前。 |
参照:
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。
117.3.4 SET_METADATA_LINKEDプロシージャ
このプロシージャは、データベース・オブジェクトをメタデータリンク・アプリケーション共通オブジェクトに設定します。アプリケーション・コンテナ内で、メタデータリンク・アプリケーション共通オブジェクトは、表などの特定のオブジェクトのメタデータを格納するため、アプリケーション共通オブジェクトを共有するコンテナは同じ構造を持ちますが、データは異なります。
このプロシージャを使用して、PDBにインストールされているアプリケーションをアプリケーション・コンテナに移行するときに、メタデータリンク・アプリケーション共通オブジェクトを設定できます。アプリケーションは、アプリケーション・ルートまたはアプリケーションPDBに移行できます。たとえば、Oracle Database 12cリリース1 (12.1) CDBに接続中のPDBにインストールされているアプリケーションを、Oracle Database 12cリリース2 (12.2) CDBのアプリケーション・コンテナに移行できます。
構文
DBMS_PDB_ALTER_SHARING.SET_METADATA_LINKED ( schema_name IN VARCHAR2, object_name IN VARCHAR2, namespace IN NUMBER, edition_name IN VARCHAR2 DEFAULT NULL);
パラメータ
表117-5 SET_METADATA_LINKEDプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
データベース・オブジェクトを所有するスキーマの名前。 |
|
データベース・オブジェクトの名前。 |
|
データベース・オブジェクトのネームスペース。
|
|
データベース・オブジェクトのエディションの名前。 |
参照:
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。
117.3.5 SET_PROFILE_EXPLICITプロシージャ
このプロシージャは、アプリケーション・コンテナでプロファイルをアプリケーション共通プロファイルとして設定します。このプロシージャは、以前のリリースのプロファイルを現行リリースのアプリケーション・コンテナに移行することを目的としています。
アプリケーション・ルートでアプリケーションのインストール、パッチ適用、アップグレードまたはアンインストール操作を実行するときに、このプロシージャを起動する必要があります。
構文
DBMS_PDB_ALTER_SHARING.SET_PROFILE_EXPLICIT ( profile_name IN VARCHAR2);
パラメータ
表117-6 SET_PROFILE_EXPLICITプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
プロファイルの名前。 |
参照:
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。
117.3.6 SET_ROLE_EXPLICITプロシージャ
このプロシージャは、アプリケーション・コンテナでロールをアプリケーション共通ロールとして設定します。このプロシージャは、以前のリリースのロールを現行リリースのアプリケーション・コンテナに移行することを目的としています。
アプリケーション・ルートでアプリケーションのインストール、パッチ適用、アップグレードまたはアンインストール操作を実行するときに、このプロシージャを起動する必要があります。
構文
DBMS_PDB_ALTER_SHARING.SET_ROLE_EXPLICIT ( role_name IN VARCHAR2);
パラメータ
表117-7 SET_ROLE_EXPLICITプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
ロールの名前。 |
参照:
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。
117.3.7 SET_USER_EXPLICITプロシージャ
このプロシージャは、アプリケーション・コンテナでローカル・ユーザーをアプリケーション共通ユーザーとして設定します。
アプリケーション・ルートでアプリケーションのインストール、パッチ適用、アップグレードまたはアンインストール操作を実行するときに、このプロシージャを起動する必要があります。
構文
DBMS_PDB_ALTER_SHARING.SET_USER_EXPLICIT ( user_name IN VARCHAR2);
パラメータ
表117-8 SET_USER_EXPLICITプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
ユーザー名。 |
参照:
アプリケーション・コンテナへのアプリケーションの移行の詳細は、『Oracle Database管理者ガイド』を参照してください。