20.2 DBMS_CLOUDのインストール
DBMS_CLOUD
パッケージ・ファミリを顧客管理Oracle Databaseで使用するには、新しいユーザーを作成し、そのユーザーとしてDBMS_CLOUD
パッケージをインストールする必要があります。
デフォルトのDBMS_CLOUD
プロシージャのインストールは、別のスキーマ(C##CLOUD$SERVICE
スキーマ)によって所有されます。このスキーマはデフォルトではロックされているため、接続がこのユーザーとして直接確立されることはありません。
新しいDBMS_CLOUD
デプロイメントを含むリリース更新(RU)に更新したときは、DBMS_CLOUD
パッケージ・ファミリにアクセスする必要があるPDBでの既存の手順に加えて、そのインストールの手順を再実行する必要があります。このインストールは冪等性書込みであるため、DBMS_CLOUD
パッケージ・ファミリをアンインストールしてから再インストールする必要はありません。このインストールを管理するために作成したユーザーは、そのスキーマに接続できます。
既存および今後のプラガブル・データベース(PDB)にDBMS_CLOUD
が正しくインストールされるようにするには、ディレクトリOracleホーム/rdbms/admin/
にあるcatcon.pl
ユーティリティを使用してそれらのパッケージをインストールします。DBMS_CLOUD
のコードおよびインストール・スクリプトは、Oracleディストリビューションに含まれています。2つの主要スクリプトを次に示します:
catclouduser.sql
: このスクリプトでは、必要な権限があるスキーマC##CLOUD$SERVICE
が作成されます。このスクリプトを変更しないでください。dbms_cloud_install.sql
: このスクリプトでは、スキーマC##CLOUD$SERVICE
にDBMS_CLOUD
パッケージがインストールされます。このスクリプトを変更しないでください。
DBMS_CLOUD
パッケージをインストールするCDBにログインし、catcon.pl
を使用してそのインストールを実行します。
次の例では、DBMS_CLOUD
パッケージがインストールされ、ログ・ファイルが接頭辞dbms_cloud_install
付きで/tmp
ディレクトリ内に作成されるように構成されています。
$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -u sys/your-password -force_pdb_mode 'READ WRITE' -b dbms_cloud_install -d $ORACLE_HOME/rdbms/admin/ -l /tmp catclouduser.sql
次の例では、DBMS_CLOUD
パッケージがスキーマC##CLOUD$SERVICE
にインストールされます:
$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -u sys/your-password -force_pdb_mode 'READ WRITE' -b dbms_cloud_install -d $ORACLE_HOME/rdbms/admin/ -l /tmp dbms_cloud_install.sql
インストールが完了したら、ログ・ファイルで、エラーがないか確認します。たとえば、パッケージDBMS_CLOUD
が作成され、ROOT
とすべてのPDB
で有効であることがわかります。
ROOT
内のパッケージを表示するには、SQLにログインし、次のチェックを実行します:
select con_id, owner, object_name, status, sharing, oracle_maintained from cdb_objects where object_name like 'DBMS_CLOUD%'
PDB内のパッケージを表示するには、SQLにログインし、次のチェックを実行します:
select owner, object_name, status, sharing, oracle_maintained from dba_objects where object_name like 'DBMS_CLOUD%';
このインストールでは、DBMS_CLOUD
のインストールのためにすべてのプラガブル・データベースが強制的にオープンされます。ただし、インストール後は前のステージのPDBが維持されます。したがって、これらの問合せチェックは、オープンされているプラガブル・データベースのみを示し、それらに対してのみ機能します。
インストール・ログでエラーが示されている場合、または無効なオブジェクトがC##CLOUD$SERVICE
に所有されている場合は、これらの問題を分析し修正する必要があります。
親トピック: DBMS_CLOUDパッケージ・ファミリ