1 リポジトリ作成ユーティリティについて

Oracle Fusion Middlewareコンポーネントの多くは、データベース内にスキーマがないと設定できません。このようなスキーマを作成してデータベースにロードするには、リポジトリ作成ユーティリティ(RCU)を使用します。

次の各トピックでは、RCUを使用する前に、理解しておく必要がある概念および機能について説明します。

RCUシステムおよびデータベース要件の確認

動作保証要件およびシステム要件についてのドキュメントを使用して、RCUのサポート対象プラットフォームおよび動作保証済データベースに関する重要な情報と、データベース構成情報について調べてください。

RCUを入手して実行する前に、この情報をよく読んでください。

RCUでサポートされるプラットフォーム

システム要件についてのドキュメントを使用して、RCUの実行が可能なサポート対象プラットフォームを確認してください。

RCUを実行できるプラットフォームを確認するには、Oracle Fusion Middlewareのシステム要件と仕様についてのドキュメントを参照してください。

動作保証されているデータベースの検索

スキーマをインストールできるデータベースを用意していない場合は、動作保証済のデータベースをインストールして構成する必要があります。

RCUで使用可能な動作保証されているデータベースのリストについては、Oracle Fusion Middlewareでサポートされているシステム構成のページにある、使用しているリリースのOracle Fusion Middleware 12cのシステム要件とサポート対象プラットフォームに関する動作保証ドキュメントを参照してください。

RCUのデータベース要件

RCUを実行する前に満たしておく必要のある、一般的なデータベース要件とコンポーネント固有のデータベース要件について確認してください。

RCUを使用する前に、Oracle Fusion Middlewareのシステム要件と仕様についてのドキュメントのリポジトリ作成ユーティリティの要件に関する説明を確認してください。

すべてのスキーマがすべてのデータベースでサポートされているわけではありません。この項に記載されている情報に慎重に目を通し、ご使用のFusion Middlewareコンポーネントに必要なスキーマをサポートする、動作保証されたデータベースを構成してください。

IBM DB2データベースに関する追加要件

IBM DB2データベースでコンポーネント・スキーマを作成する際に考慮する追加要件があります。

領域および構成に関する通常のデータベース要件に加え、IBM DB2データベースには、次の特殊な要件があります。

  • Linuxオペレーティング・システム上で動作するIBM DB2データベースには、スキーマ名の長さに制限があります。

  • IBM DB2データベースに作成されるスキーマごとに、データベース・オペレーティング・システム・ユーザーを1人作成します。

    たとえば、RCUを使用してDEV_STBという名前のスキーマを作成した場合は、オペレーティング・システム・ユーザー名はdev_stb(すべて小文字)にする必要があります。

    オペレーティング・システム・ユーザーは、次のコマンドをrootとして実行して作成できます(この例では、dev_stbというオペレーティング・システム・ユーザーを作成し、ユーザーに割り当てられたパスワードを割り当てます)。

    /usr/sbin/useradd dev_stb -p password -d /scratch/dev_stb

    次のコマンドをrootとして実行して、ユーザーのパスワード(たとえば、dev_stb)を設定できます。

    passwd -u dev_stb
    
    passwd dev_stb

    詳細は、使用しているシステムのドキュメントを参照してください。

  • RCUを実行する前に、必要なスキーマに対し、IBM DB2にオペレーティング・システム・レベルのユーザーを作成します。

    たとえば:

    監査サービス – <prefix>_iau<prefix>_iau_a (監査サービス・アペンド)、および<prefix>_iau_v (監査サービス・ビューア)。

    サービス表 — <prefix>_stb

    WebLogicサービス - <prefix>_wls

  • IBM DB2/AIXでは、RCUまたはアップグレード・アシスタント・ツールを実行する前に、次のコンポーネントの補助スキーマが使用可能であることを確認する必要があります。

    WebLogicサービス – <prefix>_wlsr

スキーマ作成の準備

スキーマを作成する前に、スキーマの作成と編成に関する概念について理解しておきます。

システム・ロードおよび製品ロードについて

RCUでのスキーマ作成は複数のフェーズで実行されますが、その各フェーズでデータベースに対して異なるレベルのアクセス権限が必要になります。

  • システム・ロード・フェーズ

    システムのロード・フェーズ中に、RCUは必要な表領域およびスキーマを作成します。まだ存在しない場合、RCUもschema_version_registryを作成します。schema_version_registryでは各コンポーネントに1つのエントリが作成され、このエントリはschema_version_registry表で適切なアクセス権が与えられ、ステータスはLOADEDに設定されます。

    SYSまたはSYSDBA権限を持つユーザーがこれらのアクションを実行する必要があり、RCUの実行時に「データベース接続の詳細」画面で認証資格証明を提供する必要があります。

    必要な権限がない場合は、「リポジトリの作成」画面で「システム・ロードに対するスクリプトの準備」を選択できます。このオプションは、RCUが選択されたコンポーネントに対してアクションを実行した場合にコールされるSQL文およびブロックと同じものを含むSQLスクリプトを生成します。このスクリプトが生成された後は、必要なSYSまたはSYSDBA権限を持つユーザーが、このスクリプトを実行してシステム・ロード・フェーズを完了できます。

    システム・ロード・フェーズが完了した後は、「ユーザーへのシステム・ロード・オブジェクトの問合せ権限の付与」に記載された権限を持つどのユーザーでもRCUを再度実行して、製品ロード・フェーズを実行することでスキーマ作成を完了できます。

    ノート:

    システム・ロード用のスクリプトを生成する必要がある場合は、OracleおよびOracle EBRデータベースでのみスキーマを作成できます(このシステム・ロード・スクリプトはその他のデータベースではサポートされません)。

    完全なSYSまたはSYSDBA権限でシステム・ロードを実行する場合は、動作保証されたデータベースであれば、どれにでもスキーマを作成できます。

  • 製品ロード・フェーズ

    製品ロード・フェーズ中に、RCUはスキーマ内のプロシージャ、ファンクション、表、索引などのオブジェクトを作成し、DBAアクセスが不要なアクションを実行します。DBA以外の任意のユーザーまたはREGISTRYOWNERユーザーを、このステップに使用できます。

    製品ロード・フェーズを実行する前に、ユーザーに次の権限を付与する必要があります。

    grant REGISTRYACCESS to user;
    grant STBROLE to user;

    製品ロード・フェーズの完了後、そのコンポーネントのポスト製品ロードがない場合、ステータスはVALIDに変更されます。

  • オプションの製品ロード後のフェーズ

    このステップは、システム・ロード・フェーズ中にDBA権限を必要とするscript_postDataLoad.sqlスクリプトを生成するコンポーネントにのみ必要です。製品ロード・フェーズの完了後、SYSまたはSYSDBA権限を持つユーザーがscript_postDataLoad.sqlスクリプトを実行する必要があります。

    このステップを、次のコンポーネントで実行する必要があります。

    • 監査サービス(IAU)

    • Oracle Enterprise Scheduler (ESS)

ノート:

Oracleの強化されたデータベースでスキーマを実行すると、リポジトリ作成ユーティリティはSOAINFRAのスキーマのロードに失敗します。「強化されたデータベースでのSOAINFRAスキーマ作成の失敗」を参照してください。

ユーザーへのシステム・ロード・オブジェクトの問合せ権限の付与

制限された権限を持つユーザーがシステム・ロード・オブジェクトを問合せできるようにするには、システム・ロードの問合せ前に、そのユーザーに特定の権限を付与する必要があります。

ノート:

このユーザーは問合せのためにシステムに接続する場合に使用し、システム・ロード・フェーズから生成されたスクリプトはDBA権限を持つユーザーが実行する必要があります。

grant select_catalog_role to user;
grant select any dictionary to user;
grant create session to user;
grant select on schema_version_registry to user;

ノート:

最後のコマンドを実行すると「表またはビューが存在しません。」というエラー・メッセージが表示される場合がありますが、これは無視してもかまいません。

システム・ロードを実行したら、同じユーザーがデータ・ロードを実行するように、そのユーザーに次の権限を付与します。

grant REGISTRYACCESS to user;
grant STBROLE to user;

カスタム接頭辞について

カスタム接頭辞は、データベース内のスキーマを編成およびグループ化するために使用します。

ノート:

IBM DB2データベースのカスタム接頭辞に関する重要な情報は、「IBM DB2データベースに関する追加要件」を参照してください。

追加された接頭辞は、次に示すように、アンダースコア(_)によりスキーマ名と区別されます。

prefix_schemaname

接頭辞:

  • 英数字のみ使用でき、スペースやその他の特殊文字は使用できません。

  • 最初の文字は英字にする必要があります。

  • 12文字以内に制限されています。

    ノート:

    接頭辞の付いたスキーマ名の合計長(カスタム接頭辞とコンポーネント・スキーマ名の合計)は、30文字以内に制限されています。

RCUで使用されるデフォルトの接頭辞はDEVです。DEVがすでに使用されている場合のデフォルトはDEV1、DEV1が使用されている場合はDEV2になります。以降についても同様です。接頭辞は、スキーマの論理グループを作成および編成するために使用されます。たとえば、TEST_MDSというテスト・バージョンのメタデータ・サービス(スキーマ名MDS)を作成しておき、本番バージョンの準備が整ったときに、PROD_MDSという2番目のバージョンのスキーマを作成することができます。TEST_MDSPROD_MDSは両方とも、同じデータベースに配置することも、別々のデータベースに配置することも可能です。

1つのデータベース内で使用できる接頭辞は、スキーマごとに1つのみです。たとえば、DEV_MDSというバージョンのメタデータ・サービス・スキーマが存在する場合は、別のバージョンのメタデータ・サービス・スキーマを作成するためにDEV接頭辞を再度使用すること(DEV_MDS2など)はできません。

同一の接頭辞を使用して別のバージョンのスキーマを作成する場合は、まず既存のスキーマを削除してから、再度スキーマを作成する必要があります。

接頭辞とスキーマとのマッピングは、schema_version_registryで管理されます。

サービス表スキーマについて

サービス表スキーマは、接頭辞ごとに1回、自動的に作成される特別なスキーマです。サービス表には、基本的なスキーマ構成情報が格納され(スキーマ接頭辞、パスワードなど)、これにOracle Fusion Middlewareコンポーネントがドメイン作成中にアクセスし、使用することができます。

たとえば、構成ウィザードには、RCUの実行時にサービス表に格納されたデータを使用するように構成できる画面があります。サービス表のスキーマ資格証明を提供した後は、サービス表からのデータが使用されて画面のフィールドに値が入れられるため、データを手動で入力する必要はありません。

サービス表を作成すると、サービス表はOracle Fusion Middlewareコンポーネントをワイヤリングするために使用されます。様々なコンポーネントのワイヤリングの詳細は、『Oracle Fusion Middlewareの管理』連携するコンポーネントのワイヤリングに関する項を参照してください。

スキーマ作成の計画

RCUを実行する前に、目的の環境に応じて複数のスキーマをグループ化および分散する方法について理解しておいてください。

詳細は、次の各例を参照してください。

単一ドメイン用の単一データベース上のスキーマの編成

この例では、単一のWebLogicドメインで使用されている単一のデータベースに含まれるスキーマ・セットを示します。

これは、DEV接頭辞を使用するすべてのスキーマがグループ化され、この単一のWebLogicドメインによって使用される、簡単なシナリオです。

図1-1 単一ドメイン用の単一データベース上のスキーマ

図1-1の説明が続きます
「図1-1 単一ドメイン用の単一データベース上のスキーマ」の説明
単一ドメイン用の複数データベース上のスキーマの編成

この例では、単一のWebLogicドメインで使用されている複数のデータベースに分散した1つのスキーマ・セットを示します。

図1-2 単一ドメイン用の複数データベース上のスキーマ

図1-2の説明が続きます。
「図1-2 単一ドメイン用の複数データベース上のスキーマ」の説明

同じスキーマ接頭辞(この場合はDEV)を使用すると、これらの関連するスキーマをグループ化することができます(複数のデータベースにまたがる場合も)。

複数ドメイン用の単一データベース上のスキーマの編成

この例では、単一のデータベース上の複数のスキーマを複数のドメイン用にグループ化する方法を示します。

図1-3 複数ドメイン用の単一データベース上のスキーマ

図1-3の説明が続きます
「図1-3 複数ドメイン用の単一データベース上のスキーマ」の説明

この例では、1つ目のスキーマ・セット(WebLogicドメイン1用)にDEV1を使用し、2つ目のスキーマ・セット(WebLogicドメイン2用)にDEV2を使用して、接頭辞をグループ化しています。

複数のドメイン間で1つのスキーマ・セットを共有することはできず、各ドメインが専用のスキーマ・セットを持つ必要があります。

複数ドメイン用の複数データベース上のスキーマの編成

この例では、複数のWebLogicドメインで使用するために複数のデータベース上のスキーマを編成する方法を示します。

図1-4 複数ドメイン用の複数データベース上のスキーマ

図1-4の説明が続きます
「図1-4 複数ドメイン用の複数データベース上のスキーマ」の説明

このシナリオでは、同じホスト上の別々のドメインで、名前および接頭辞(DEV)が同じ複数のスキーマを使用できますが、これは、これらのスキーマが異なるデータベース上に存在するためです。

宣言型XMLによるコンポーネントの統合

RCUは、XML DTDによる拡張性を備えています。このようなDTDを使用することによって、コンポーネント所有者は、定義されているDTDに応じた構成ファイルを提供することで、そのコンポーネントと前提条件をRCUに統合できます。

様々なコンポーネントの統合の詳細は、「カスタム・アプリケーション・リポジトリを構成するためのリポジトリ作成ユーティリティの拡張」を参照してください。

RCUでのJava Access Bridgeの使用(Windowsのみ)

Java Access Bridgeを使用すると、JAWSスクリーン・リーダーなどのアシスティブ・テクノロジを使用して、Windowsプラットフォームで実行されているJavaアプリケーションを読み取ることができます。

アシスティブ・テクノロジでは、Oracle Universal InstallerやOracle Enterprise ManagerなどのJavaベースのインタフェースを読み取ることができます。

詳細は、以下のトピックを参照してください。

Java Access Bridgeのインストール

Java Access Bridgeをダウンロードしてインストールするには、次のステップを実行します。

  1. 次のURLからJava Access Bridgeをダウンロードします。
  2. Java Access Bridgeのインストールの詳細および手順については、「Java Access Bridgeインストールの手順」を参照してください。

Java Access Bridgeを使用するためのRCUの構成

インストールの完了後、Java Access Bridgeを使用するようにRCUを構成するには、インストールしたJava Access Bridgeファイルを指すようにシステム変数ORACLE_OEM_CLASSPATHを設定します。

  1. コントロール パネルから「システムのプロパティ」を表示します。
  2. 「詳細」タブを選択します。
  3. システム環境変数リストで「新規」ボタンをクリックします。「新しいシステム変数」ダイアログが表示されます。
  4. 「変数名」フィールドに、ORACLE_OEM_CLASSPATHと入力します。
  5. 「変数値」フィールドに、access-bridge.jarおよびjaccess-1_4.jarへのフルパスを入力します。

    セミコロンを使用して2つのパスを区切ります。引用符や空白は使用しないでください。

  6. 「OK」をクリックします。