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

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

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

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

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

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

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

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

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

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

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

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

RCUのデータベース要件

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

すべてのスキーマがすべてのデータベースでサポートされているわけではありません。したがって、RCUの使用を開始する前に、Oracle Fusion Middlewareのサポートされるシステム構成ページにあるOracle Fusion Middlewareのシステム要件およびサポートされるプラットフォームのドキュメントを参照してください。動作保証情報で、MySQLデータベースがOracle Data IntegratorおよびOracle GoldenGate Studio Fusion Middlewareコンポーネントでのみサポートされていることを確認できます。

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

スキーマ作成の準備

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

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

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;

カスタム接頭辞について

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

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

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に統合できます。

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

Autonomous Transaction Processingデータベースでのスキーマ作成の前提条件

Autonomous Transaction Processingデータベース(Autonomous Transaction Processing - 専用Autonomous Transaction Processing - 共有の両方)にスキーマを作成する前に、ウォレット設定を変更して環境変数を設定し、ORACLE HOMEにパッチを適用する必要があります。

Autonomous Transaction Processingデータベースに接続するための設定

Autonomous Transaction Processingデータベース(Autonomous Transaction Processing - 専用Autonomous Transaction Processing - 共有の両方)に接続するには、ウォレット設定を変更し、この項の説明に従って環境変数を設定します。

ノート:

Oracle Internet Directoryの場合、Autonomousデータベースに接続するには、「Oracle Internet DirectoryでAutonomous Transaction Processingデータベースに接続するための設定」を参照してください。
ウォレット設定を変更するには:
  1. Autonomous Transaction Processingデータベース用のウォレットをダウンロードし、そのウォレットを/users/test/wallet_dbname/ディレクトリに解凍します。

    ノート:

    /users/test/wallet_dbname/ディレクトリは、ウォレットの場所の一例です。ウォレットを目的の場所にダウンロードできます。

    ウォレットにJDBC接続用のキーストアが含まれていることを確認する必要があります。

  2. ウォレットで、sqlnet.oraファイルのウォレットの場所を次のように変更します:

    WALLET_LOCATION = (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY="/users/test/wallet_dbname/")))

    ノート:

    ウォレットを別の場所にダウンロードした場合は、ディレクトリの場所をウォレットの場所に変更します。

  3. ウォレットで、ojdbc.propertiesファイルの末尾に次のコマンドを追加します:

    SSL_SERVER_DN_MATCH=yes

環境変数を設定するには:
  1. RCUを起動する前に、次のコマンドを実行します:

    export RCU_SSL_MODE=true

    export TNS_ADMIN=/users/test/wallet_dbname/

    ノート:

    TNS_ADMINをエクスポートするコマンドで、/users/test/wallet_dbname/ディレクトリをウォレットの場所に変更します。

Oracle Internet DirectoryでAutonomous Transaction Processingデータベースに接続するための設定

Oracle Internet Directoryで、Autonomous Transaction Processingデータベース(Autonomous Transaction Processing - 専用およびAutonomous Transaction Processing - 共有の両方)に接続するには、ウォレット設定を変更し、この項の説明に従って環境変数を設定します。

ウォレット設定を変更するには:
  1. Autonomous Transaction Processingデータベース用のウォレットを<$ORACLE_HOME>/network/adminディレクトリにダウンロードします。

    $ORACLE_HOMEをOracleホームの場所に変更する必要があります。たとえば、/users/test/network/adminです。

    ウォレットにJDBC接続用のキーストアが含まれていることを確認する必要があります。

  2. ウォレットで、sqlnet.oraファイルのウォレットの場所を次のように変更します:

    WALLET_LOCATION = (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY="<$ORACLE_HOME>/network/admin")))

    $ORACLE_HOMEをOracleホームの場所に変更する必要があります。たとえば、/users/test/network/adminです。

  3. ウォレットで、ojdbc.propertiesファイルの末尾に次のコマンドを追加します:

    SSL_SERVER_DN_MATCH=yes

環境変数を設定するには:
  1. RCUを起動する前に、次のコマンドを実行します:

    export RCU_SSL_MODE=true

    export TNS_ADMIN=<$ORACLE_HOME>/network/admin

    $ORACLE_HOMEをOracleホームの場所に変更する必要があります。たとえば、/users/test/network/adminです。

Oracleホームへのパッチの適用

リポジトリ作成ユーティリティの画面を使用してスキーマを作成する前に、既存のORACLE HOMEに必要なパッチを適用する必要があります。

ご使用の製品に対する最新のパッチは、必ずMy Oracle Supportで確認してください。パッチIDまたは番号、または製品、ファミリを指定してパッチを検索できます。

  1. https://support.oracle.com.でMy Oracle Supportにサインインします。
  2. 「パッチと更新版」タブを選択します。「パッチと更新版」ページが開き、「パッチ検索」リージョンが表示されます。ここでは次のオプションを指定できます。
    • 「パッチIDまたは番号」フィールドに、目的のパッチの番号を入力します。(番号は、パッチによって修正されるプライマリ・バグ番号と同じです。)このオプションは、あらかじめパッチ番号がわかっている場合に便利です。
    • 製品名、リリースおよびプラットフォームでパッチを検索するには、「製品」または「ファミリ」リンクをクリックして、1つ以上の検索基準を入力します。
  3. 「検索」をクリックして問合せを実行します。「パッチ検索結果」ページがオープンします。
  4. パッチID番号をクリックします。パッチに関する詳細が表示されます。また、パッチをダウンロードする前にRead Meファイルを表示することもできます。
  5. 「ダウンロード」をクリックします。パッチの「Read Me」の手順に従ってパッチをインストールします。

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」をクリックします。