独自のOracle DBインスタンスへの切替え
Visual Builderインスタンスでプロビジョニングされたデータベースは、ビジネス・オブジェクトおよびアプリケーション・メタデータのデータを格納するために使用されますが、このデータベースには5GBの制限があり、通常のSQLを使用してオブジェクトのデータにアクセスすることはできません。
テナント・スキーマに対して5GBの制限が不十分な場合は、デフォルト・データベースではなく、より多くの領域を持つOracle DBインスタンスを使用するようにインスタンスを構成できます。 Oracle DBaaSまたはAutonomous Transaction Processing (ATP)データベース・インスタンスに接続できます。 ATPデータベースを使用すると、VBで作成されるオブジェクトに、より多くの領域と直接SQLでアクセスできます。 20GBの空きストレージを提供するFree Forever Oracle ATPを使用することもできます。
別のOracle DBインスタンスを使用するには、テナント設定のウィザードを使用して、データベース・インスタンスへの接続を作成し、テナントの現在のデータベースに格納されているアプリケーションをエクスポートします。
JDBCを使用してDBaaSインスタンスに接続する場合、ADMINユーザーがテナント・スキーマを作成できるようにするために必要な権限を含める必要があります。 次のSQLは、必要な権限付与を示します:
CREATE USER [adminuser] IDENTIFIED BY [password];
GRANT CONNECT, RESOURCE, DBA TO [adminuser];
GRANT SELECT ON SYS.DBA_PROFILES TO [adminuser] WITH GRANT OPTION;
GRANT SELECT ON SYS.DBA_USERS TO [adminuser] WITH GRANT OPTION;
GRANT SELECT ON SYS.DBA_DATA_FILES TO [adminuser] WITH GRANT OPTION;
GRANT SELECT ON SYS.DBA_SEGMENTS TO [adminuser] WITH GRANT OPTION;ATPを使用する場合は、接続情報に加えてwallet.zipファイルをウィザードに含める必要があります。 正しい管理権限を持つ新しいATP ADMINユーザーを作成できます。 次のSQL文は、SQL*PlusまたはSQL Developerに2番目のATP ADMINユーザーを作成する方法を示しています。
DROP USER [adminuser] CASCADE;
CREATE USER [adminuser] IDENTIFIED BY [password];
GRANT CREATE USER, ALTER USER, DROP USER, CREATE PROFILE TO [adminuser] WITH ADMIN OPTION;
GRANT CONNECT TO [adminuser] WITH ADMIN OPTION;
GRANT RESOURCE TO [adminuser] WITH ADMIN OPTION;
GRANT CREATE SEQUENCE, CREATE OPERATOR, CREATE SESSION,ALTER SESSION, CREATE PROCEDURE, CREATE VIEW, CREATE JOB,CREATE DIMENSION,CREATE INDEXTYPE,CREATE TYPE,CREATE TRIGGER,CREATE TABLE,CREATE PROFILE TO [adminuser] WITH ADMIN OPTION;
GRANT UNLIMITED TABLESPACE TO [adminuser] WITH ADMIN OPTION;
GRANT SELECT ON SYS.DBA_PROFILES TO [adminuser] WITH GRANT OPTION;
GRANT SELECT ON SYS.DBA_USERS TO [adminuser] WITH GRANT OPTION;
GRANT SELECT ON SYS.DBA_DATA_FILES TO [adminuser] WITH GRANT OPTION;
GRANT SELECT ON SYS.DBA_SEGMENTS TO [adminuser] WITH GRANT OPTION;ノート:
データベースの切替え時に「テナント・データベースの変更」ダイアログでエラーFailed to verify the target databaseが発生した場合、必要な権限がないか、データベースにアクセスできないことが原因である可能性があります。 (Visual Builderは、データベースと同じプライベート・サブネットのプライベート・エンドポイントとしてVisual Builderがプロビジョニングされている場合を除き、プライベート・サブネットのデータベースにアクセスできません。)
エラーが表示された場合は、ADMINユーザー(adminuser)に必要な権限があることを確認します。 ADMINユーザーにSYSOPERおよびSYSDBAロールを割り当てる必要がある場合もあります:
GRANT SYSOPER, SYSDBA TO [adminuser];次の問合せを実行して、ADMINユーザーが必要な権限を持っていることを確認できます:
select * from v$pwfile_users;ウィザードでは、保持するインスタンス内のすべてのアプリケーションを選択してエクスポートする必要があります。 インスタンスで新しいデータベース・インスタンスが使用されていることを確認した後、エクスポートしたアプリケーションをVisual Builderにインポートし、新しいデータベース・インスタンスに保存する必要があります。
ノート:
インスタンスにすでにライブ・アプリケーションがある場合:
- 新しいデータベースに切り替える前に、Visual Builderデータ・マネージャのエクスポート・オプションを使用して、ビジネス・オブジェクトのデータをバックアップしてください。 その後、ウィザードでエクスポートするアプリケーション・アーカイブから作成する新しいアプリケーションにそのデータをインポートできます。
- ライブ・アプリケーションをロックしてからインスタンス・データベースの設定を変更し、ユーザーが移行プロセス中に使用できないようにします。 移行プロセスが完了したら、アプリケーションをロック解除できます。 ライブ・アプリケーションのロックおよびロック解除は、Visual Builderホーム・ページのアプリケーション・オプション・メニューで行います。 「Oracle Integration 3のOracle Visual Builderでのアプリケーションの開発」の「アプリケーションの管理」を参照してください。
別のOracle DBインスタンスに切り替えるには:
データベースを切り替えると、「テナント・データベース」ペインにテナント・データベースの接続情報が表示されます。 次のイメージでは、インスタンスがAutonomous Transaction Processing (ATP)データベース・インスタンスを使用していることがわかります。
ノート:
埋込みデータベースの使用に戻す場合は、「テナント・データベース」ペインで
をクリックします。 現在のデータベースではなくインスタンス埋込みデータベースの使用に切り替えることを確認するよう求められます。
埋込みデータベースの使用に戻すと、現在のデータベース内のビジュアル・アプリケーションは自動的に転送されません。 データベースを切り替える前に、保持するアプリケーションをエクスポートし、埋込みデータベースにインポートする必要があります。
Visual Builderでは、新しいDBのアプリケーションおよびビジネス・オブジェクトに使用するスキーマおよび表が自動的に管理されるため、これ以上の作業は必要ありません。
SQLを使用してビジネス・オブジェクトにアクセスする場合は、VBによって、VB_で始まりランダムに生成された文字列が続く名前のユーザー/スキーマが作成されます。 データ・ディクショナリを調べることで、特定のアプリケーションを表すユーザーを検索できます。 appのdev、stageおよびpublishedインスタンスには、別々のスキーマが表示されることに注意してください。 開発インスタンスとテスト・インスタンスのスキーマは、作成するアプリケーションの新しいバージョンごとに異なる名前で再作成されます。 公開済アプリケーションのスキーマ名が変更されないようにするには、アプリケーションの新しいバージョンを公開するときに、データを置換しないオプションを選択する必要があります。
ノート:
Visual Builderでスキーマを作成および管理するかわりに、データベースにすでに存在するスキーマをアプリケーションで使用可能にすることで、開発者は既存のDB表およびビューに基づいてビジネス・オブジェクトを作成できます。 独自のスキーマを使用する場合は、独自のスキーマの使用時に要件および制限事項を理解していることを確認してください。 詳細は、「Oracle Visual Builderを使用したアプリケーションの開発」の「ビジネス・オブジェクトの独自のデータベース・スキーマへの切替え」を参照してください。
独自のスキーマを使用する場合、アプリケーションの開発インスタンス、ステージング・インスタンスおよび公開インスタンスに使用されるスキーマは1つのみです。 「Oracle DBインスタンスのスキーマをアプリケーションで使用可能にする」を参照してください。



