多くのOracle Fusion Middlewareコンポーネントでは、メタデータ・リポジトリを使用してアプリケーションのコンポーネントおよびメタデータの構成情報を保持しています。この章では、Oracle Fusion Middlewareで使用するメタデータ・リポジトリの管理について説明します。
内容は次のとおりです。
メタデータ・リポジトリには、Oracle Application Development FrameworkなどのOracle Fusion Middlewareコンポーネントのメタデータが含まれています。また、Oracle Fusion Middlewareの構成に関するメタデータおよびアプリケーションのメタデータも格納できます。
Oracle Fusion Middlewareでは、複数のリポジトリ・タイプがサポートされています。リポジトリ・タイプは、特定のOracle Fusion Middlewareコンポーネント(Oracle Application Development Frameworkなど)に属する特定のスキーマまたはスキーマ・セットを表します。Oracle Fusion Middlewareでは、エディションベースの再定義(EBR)がサポートされており、エディションベースの再定義を使用すると、アプリケーションの使用中にそのデータベース・コンポーネントをアップグレードでき、停止時間を最小化あるいは排除することができます。リポジトリのスキーマは、EBR対応スキーマであることがあります。
特殊なタイプのリポジトリであるOracle Metadata Services (MDS)リポジトリには、特定タイプのデプロイ済アプリケーションのメタデータが格納されます。これには、ユーザーの組織で独自に開発されたカスタムのJava EEアプリケーションや、一部のOracle Fusion Middlewareコンポーネント・アプリケーションが含まれます。MDSリポジトリ・タイプに固有の関連情報については、第14.3項を参照してください。
MDSには、データベース・ベースおよびファイルベースのリポジトリを作成できます。本番環境では、データベース・ベース・リポジトリを使用します。一部のコンポーネントではスキーマがデータベースにインストールされている必要があるため、データベース・ベース・リポジトリを使用する必要があります。MDSでは、エディションベースの再定義(EBR)対応のスキーマがサポートされています。
注意: メタデータ・リポジトリのデータベースがOracle Fusion Middlewareインストールで使用された後、データベース、サービス名またはSIDは変更できません。 |
Oracle Fusion Middleware Repository作成ユーティリティ(RCU)を使用して、既存のデータベースにメタデータ・リポジトリを作成します。RCUを使用すると、MDSリポジトリや、特定コンポーネントのメタデータのリポジトリを作成できます。RCUはコンポーネントに必要なスキーマを作成します。スキーマのリストおよびその表領域とデータファイルについては、『リポジトリ作成ユーティリティによるスキーマの作成』を参照してください。
RCUでは、コンポーネントのスキーマを削除することもできます。
サポートされているデータベースとサポートされているバージョンの詳細、およびMDSリポジトリでのこれらのデータベースの使用の詳細は、Oracle Fusion Middlewareのシステム要件と仕様のMDSスキーマ用にサポートされているデータベースに関する項を参照してください。
注意: ネットワーク待機時間を短縮するには、すべてのメタデータ・リポジトリを同一サイトのデータベースにコンポーネントとして配置することをお薦めします。 |
MDSリポジトリの管理については、第14.3項を参照してください。
関連項目: RCUを使用してデータベースベースのメタデータ・リポジトリを作成する方法の詳細は、『リポジトリ作成ユーティリティによるスキーマの作成』を参照してください。 |
Oracle Metadata Services (MDS)リポジトリには、特定タイプのデプロイ済アプリケーションのメタデータが格納されます。このデプロイ済アプリケーションには、ユーザーの組織で独自に開発されたカスタムのJava EEアプリケーションや、Oracle B2B、Oracle Web Services Managerなど、一部のOracle Fusion Middlewareコンポーネント・アプリケーションがあります。アプリケーションのメタデータを格納するMDSリポジトリにメタデータのコンテンツをデプロイする際には、選択したメタデータの圧縮アーカイブであるメタデータ・アーカイブ(MAR)が使用されます。
次の状況では、アプリケーションをMDSにデプロイして、デプロイ後のメタデータの管理を可能にする必要があります。
MARの形式でパッケージ化され、シードされたメタデータがアプリケーションに組み込まれている場合
実行時にユーザーのパーソナライズを有効にする必要がある場合
SOAコンポジットアプリケーション(SCA)がある場合
次の各項では、MDSリポジトリについて説明します。
関連項目: Oracle Real Application Cluster (Oracle RAC)でMDSリポジトリを使用する方法の詳細は、『高可用性ガイド』を参照してください。 |
MDSフレームワークを使用すると、カスタマイズ可能なアプリケーションを作成できます。カスタマイズ済アプリケーションは、ベース・アプリケーション(ベース・ドキュメント)と、カスタマイズを含む1つ以上のレイヤーで構成されます。MDSは、カスタマイズをメタデータ・リポジトリに格納します。実行時にはこのカスタマイズを取得してベース・メタデータにマージし、カスタマイズ済アプリケーションを公開します。カスタマイズはベースから個別に保存されているので、カスタマイズは安全にアップグレードでき、ベースへの新しいパッチはカスタマイズを分割せずに適用できます。カスタマイズ済アプリケーションが起動されると、カスタマイズの内容がベース・アプリケーションに適用されます。
カスタマイズ可能なアプリケーションでは、複数のカスタマイズ・レイヤーを使用できます。カスタマイズ・レイヤーには、業種やサイトなどがあります。各レイヤーで複数のカスタマイズ・レイヤー値を使用できますが、実行時には、通常そのようなレイヤー値は各レイヤーから1つのみ適用されます。たとえば、カスタマイズ可能なアプリケーションの業種レイヤーには、医療や金融などの業種の値を格納できます。一方、デプロイ対象のカスタマイズ済アプリケーションで一度に使用されるのは、このレイヤー値のいずれか一つのみです。ベース・ドキュメントおよびカスタマイズ・レイヤーの詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のMDSを使用したアプリケーションのカスタマイズに関する項を参照してください。
MDSリポジトリはファイル・ベースまたはデータベース・ベースのいずれかです。本番環境では、データベース・ベース・リポジトリを使用します。1つのドメイン内に複数のMDSリポジトリを作成できます。
データベース・ベースのMDSリポジトリには、次の機能があり、これらはファイルベースのMDSリポジトリではサポートされません。
効率的な問合せ機能: データベース・ベースのMDSリポジトリは、セットベースの問合せ用に最適化されています。このため、データベース・リポジトリの検索などのパフォーマンスに優れています。
MDSリポジトリの問合せAPIには、問合せ操作を定義し、メタデータ・オブジェクトに対する条件を指定する構成メンバーがあります。これらの条件は、検索結果を特定の属性のタイプと値のセット、コンポーネント・タイプ、テキスト・コンテンツおよびメタデータ・パスに限定する一連の基準です。このAPIでは、複数の条件を組み合せ、ORおよびAND構成メンバーを使用することによって、動的な再帰的合成を実現できます。
アトミックなトランザクション・セマンティック: データベース・ベースのMDSリポジトリは、データベース・トランザクション・セマンティックを使用し、トランザクションの失敗(インポートやデプロイの失敗など)をロールバックする機能があります。
バージョニング: MDSリポジトリでは、ドキュメントのバージョンがデータベース・ベース・リポジトリで保持されます。バージョニングを使用すると、メタデータ・オブジェクトに対する変更は、メタデータ・リポジトリの既存データを単に上書きするのではなく、別のバージョンとして保存されます。バージョンのラベル付けだけではなくバージョン履歴の機能もあるため、特定時点におけるメタデータのセットを取得できます。
メタデータの変更の分離: データベース・ベースのMDSリポジトリでは、実行環境でメタデータの変更を分離して、すべてのユーザーに渡す前に一部のユーザー・グループでテストできます。
ポーリングに基づいた外部変更検出のサポート: あるアプリケーションで行った共有メタデータに対する変更を別のアプリケーションで検出できます。たとえば、クラスタ内の管理対象サーバーAおよびBにアプリケーションをデプロイし、管理対象サーバーAにデプロイされたアプリケーションのカスタマイズを変更した場合、そのデータはデータベース・ベース・リポジトリに書き込まれます。管理対象サーバーBにデプロイされたアプリケーションでは、更新されたカスタマイズが使用されます。これにより、高可用性がサポートされます(特に、アクティブ/アクティブ・シナリオの場合。)
更新のクラスタ化: データベース・ベースのMDSリポジトリでは、複数のホストからメタデータを更新できます。ファイルベースのMDSリポジトリでは、更新できるのは一度に1つのホストからのみです。
共有メタデータ・リポジトリを構成すると、複数のアプリケーションでメタデータを共有できます。メタデータを共有すると、アプリケーションの外部変更検出を構成することにより、あるアプリケーションがこのリポジトリのメタデータに対して行った変更を、共有リポジトリを使用している別のアプリケーションで確認できます。
MDSリポジトリでは、Oracle Fusion Middlewareコンポーネントなどのアプリケーションは、それぞれ専用のパーティションにデプロイされます。パーティションは、データベース・ベースかファイルベースかとは関係なく、物理MDSリポジトリ内で独立した論理リポジトリです。
アプリケーションをデプロイして、MDSリポジトリに関連付ける方法は、第10章を参照してください。
MDSリポジトリへのパッチ適用に関しては、次の点に注意してください。
パッチを適用する前に、MDSリポジトリをドメインに登録する必要があります。そうしないと適用したパッチがロールバックできず、追加のパッチを適用できません。
パッチの適用対象は次のとおりです。
MDSのメタデータ
MDSのjarファイル
MDSの共有ライブラリ
データベース・ベースのメタデータ・リポジトリ内のMDSスキーマ。パッチには、新たな列の追加や列のサイズの拡大など、付加的な変更が含まれる場合があります。このタイプのパッチは、ロールバックできません。
データベース・ベースのメタデータ・リポジトリ内のMDSデータベースPL/SQL。パッチには、PL/SQLパッケージの変更や、新たなPL/SQLパッケージおよび手順が含まれる場合があります。
対応するMDS JARファイル・パッチを必要とする、データベース・ベースのメタデータ・リポジトリ内のMDSスキーマまたはPL/SQL
MDSリポジトリでは、Oracleデータベースだけではなく、SQL Server、DB2、MySQLなど、Oracle以外のデータベースもサポートされます。
サポートされているデータベースとサポートされているバージョンの詳細、およびMDSリポジトリでのこれらのデータベースの使用の詳細は、Oracle Fusion Middlewareのシステム要件と仕様のMDSスキーマ用にサポートされているデータベースに関する項を参照してください。
Fusion Middleware ControlまたはWLSTコマンドを使用して、MDSリポジトリのほとんどの操作を実行できます。ただし、Fusion Middleware Controlのカスタム・ユーザー・インタフェースまたはWLSTコマンドが使用できない一部の操作では、システムMBeanを使用する必要があります。
次の各項では、システムMBeanのみがサポートされている場合を除き、Fusion Middleware ControlとWLSTコマンドを使用して、操作を実行する方法を説明します。システムMBeanのみがサポートされている場合、その項ではシステムMBeanを使用して操作を実行する方法を説明します。
パーティション、各パーティションにデプロイされたアプリケーションなど、リポジトリの詳細を表示できます。また、パーティションに対して、パージ、削除、メタデータのインポートやエクスポートなどの操作も実行できます。
後続の各項目で説明するMDS操作を使用する場合は次の点に注意してください。
エクスポート操作では、MDSリポジトリ・パーティションからファイル・システムのディレクトリまたはアーカイブに、メタデータ・ドキュメントのバージョニング済のストライプ(最先端バージョンか、ラベルに基づくもの)がエクスポートされます。ディレクトリにエクスポートする場合、このディレクトリは、アプリケーションを実行しているホストからアクセス可能である必要があります。アーカイブにエクスポートする場合、このアーカイブは、コマンドを実行するシステム上に配置できます。
メタデータのバージョニングはファイルベース・リポジトリではサポートされないため、ファイルベース・リポジトリからは、最先端バージョン(唯一のバージョンでもあります)がエクスポートされます。
インポート操作では、ファイル・システム・ディレクトリまたはアーカイブからMDSリポジトリ・パーティションにメタデータ・ドキュメントがインポートされます。ディレクトリにエクスポートした場合、このディレクトリは、アプリケーションを実行しているホストからアクセス可能である必要があります。アーカイブにエクスポートした場合、このアーカイブは、コマンドを実行するシステム上に配置できます。
ターゲット・リポジトリがデータベース・ベース・リポジトリの場合、メタデータ・ドキュメントは新しい最先端バージョンとしてインポートされます。ターゲット・リポジトリがファイルベース・リポジトリの場合、メタデータ・ドキュメントは上書きされます。
注意:
|
表14-1は、各操作に必要な論理ロールを示しています。ロールは、その操作の実行にWLSTコマンド、Fusion Middleware Control、およびMBeanのどれを使用する場合でも適用されます。
表14-1 MDSの操作と必要なロール
操作 | 論理ロール |
---|---|
キャッシュのクリア |
アプリケーションのオペレータ・ロール |
メタデータ・パーティションのクローニング |
ドメインのAdminロール |
メタデータ・ラベルの作成 |
アプリケーションのAdminロール |
メタデータ・パーティションの作成 |
ドメインのAdminロール |
メタデータの削除 |
アプリケーションのAdminロール |
メタデータ・ラベルの削除 |
アプリケーションのAdminロール |
メタデータ・パーティションの削除 |
ドメインのAdminロール |
メタデータ・データベース・リポジトリの登録解除 |
ドメインのAdminロール |
メタデータ・ファイル・リポジトリの登録解除 |
ドメインのAdminロール |
サンドボックスの破棄 |
アプリケーションのAdminロール |
メタデータのエクスポート |
アプリケーションのMonitorロール |
サンドボックス・メタデータのエクスポート |
アプリケーションのMonitorロール |
MARのインポート |
アプリケーションのAdminロール |
メタデータのインポート |
アプリケーションのAdminロール |
サンドボックス・メタデータのインポート |
アプリケーションのAdminロール |
メタデータ・ラベルの一覧表示 |
アプリケーションのMonitorロール |
サンドボックスのリスト |
アプリケーションのMonitorロール |
メタデータ・ラベルの昇格 |
アプリケーションのAdminロール |
メタデータのパージ |
アプリケーションのAdminロール |
メタデータ・ラベルのパージ |
アプリケーションのAdminロール |
メタデータ・データベース・リポジトリの登録 |
ドメインのAdminロール |
メタデータ・ファイル・リポジトリの登録 |
ドメインのAdminロール |
これらのロールをWebLogic Serverロールにマップする方法の詳細は『Oracle Platform Security Servicesによるアプリケーションの保護』の論理ロールのWebLogicロールへのマッピングに関する項を参照してください。
次の各項では、データベース・ベースのMDSリポジトリを登録および登録解除する方法を説明します。
注意: 次のWLSTコマンドまたは同等のMBeanをスクリプトで起動する場合は、次の点に気を付けてください。
今回のリリースおよびこれまでのリリースで、これらのコマンドやMBeanは次のような動作をします。
ただし、編集セッションは明示的に開始できます。そうした場合、変更の自動アクティブ化は非推奨です。 |
アプリケーションをMDSリポジトリにデプロイする前に、Oracle WebLogic Serverドメインにリポジトリを登録する必要があります。次の各項で説明するように、Fusion Middleware ControlまたはWLSTを使用して、データベース・ベースのMDSリポジトリを登録できます。
第14.2項の説明に従って、RCUを使用してデータベース・ベースのMDSリポジトリを作成します。
Fusion Middleware Controlを使用してデータベース・ベースのMDSリポジトリを登録する手順は次のとおりです。
「WebLogicドメイン」メニューから「その他のサービス」、「メタデータ・リポジトリ」を選択します。
次の図のように、「メタデータ・リポジトリ」ページが表示されます。
「データベース・ベース・リポジトリ」セクションで、「登録」をクリックします。
「データベース・ベースのメタデータ・リポジトリの登録」ページが表示されます。
「データベース接続」セクションに、次の情報を入力します。
「データベース・タイプ」で、データベースのタイプを選択します。
「ホスト名」に、ホストの名前を入力します。
「ポート」に、データベースのポート番号を入力します(例: 1521
)。
「サービス名」に、データベースのサービス名を入力します。データベースのデフォルトのサービス名は、グローバル・データベース名です。これはorcl
などのデータベース名とドメイン名で構成されます。この例のサービス名はorcl.domain_name.com
になります。
「ユーザー名」に、SYS
などの、SYSDBAロールが割り当てられたデータベース・ユーザー名を入力します。
「パスワード」に、このユーザーのパスワードを入力します。
「ロール」で、SYSDBAなどのデータベース・ロールを選択します。
「問合せ」をクリックします。
次の図のように、データベース内にメタデータ・リポジトリがある表が表示されます。
リポジトリを選択して、次の情報を入力します。
「リポジトリ名」に名前を入力します。
「スキーマ・パスワード」に、スキーマ作成時に指定したパスワードを入力します。
「OK」をクリックします。
リポジトリは、Oracle WebLogic Serverドメインに登録され、管理サーバーに対してターゲット設定されます。リポジトリのターゲット設定を他のサーバーにする方法は、第14.3.2.2項を参照してください。
また、mds-repository_nameという名前のシステム・データ・ソースが作成されます。このデータ・ソースに対するグローバル・トランザクション・サポートは無効になっています。
コマンド行を使用してデータベース・ベースのMDSリポジトリを登録するには、WLSTのregisterMetadataDBRepository
コマンドを使用します。たとえば、MDSリポジトリmds-repos1を登録するには、次のコマンドを使用します。
registerMetadataDBRepository(name='mds-repos1', dbVendor='ORACLE', host='hostname', port='1521', dbName='ora11', user='username', password='password', targetServers='server1')
Fusion Middleware Controlを使用してMDSリポジトリを登録すると、リポジトリは管理サーバーに対してターゲット指定されます。リポジトリのターゲット設定を追加のサーバーにすることや、ターゲット設定からサーバーを削除することができます。
MDSリポジトリを追加のサーバーにターゲット設定するには:
ナビゲーション・ペインで「メタデータ・リポジトリ」を展開します。
リポジトリを選択します。
次の図のようにリポジトリのホーム・ページが表示されます。
「ターゲット・サーバー」セクションで、「追加」をクリックします。
「リポジトリをターゲット設定します」ダイアログ・ボックスが表示されます。
サーバーまたはクラスタを選択して、「ターゲット」をクリックします。
クラスタを開いて、クラスタ内のサーバーを表示できます。ただし、クラスタを選択した場合、リポジトリはクラスタ内のすべてのサーバーにターゲット設定されます。
操作が完了したら、「閉じる」をクリックします。
サーバーが「ターゲット・サーバー」セクションにリストされます。
リポジトリのターゲット設定からサーバーを削除するには:
ナビゲーション・ペインで「メタデータ・リポジトリ」を展開します。
リポジトリを選択します。
リポジトリのホーム・ページが表示されます。
「ターゲット・サーバー」セクションで、ターゲット・サーバーを選択し、「削除」をクリックします。
「リポジトリをターゲット設定解除します」ダイアログ・ボックスが表示されます。
サーバーまたはクラスタを選択して、「ターゲット設定解除」をクリックします。
クラスタを開いて、クラスタ内のサーバーを表示できます。ただし、クラスタを選択した場合、リポジトリはクラスタ内のすべてのサーバーのターゲット設定から削除されます。
操作が完了したら、「閉じる」をクリックします。
登録解除をしても、リポジトリに格納されているデータが失われることはありません。ただし、登録解除されたリポジトリを使用しているアプリケーションはすべて、リポジトリの登録解除後に機能しなくなります。リポジトリの登録解除前には、必ずそのリポジトリを使用しているアプリケーションがないことを確認してください。
次の各項で説明するように、Fusion Middleware ControlまたはWLSTを使用して、データベース・ベースのMDSリポジトリを登録解除できます。
Fusion Middleware Controlを使用してMDSリポジトリの登録を解除する手順は次のとおりです。
「WebLogicドメイン」メニューから「その他のサービス」、「メタデータ・リポジトリ」を選択します。
「メタデータ・リポジトリ」ページが表示されます。
また、メタデータ・リポジトリのホーム・ページの「メタデータ・リポジトリ」メニューから、「管理」→「登録/登録解除」を選択して、「メタデータ・リポジトリの登録」ページにナビゲートすることもできます。
表からリポジトリを選択します。
「登録解除」を選択します。
「確認」ダイアログ・ボックスで、「はい」をクリックします。
コマンド行を使用してデータベース・ベースのMDSリポジトリの登録を解除するには、WLSTのderegisterMetadataDBRepository
コマンドを使用します。たとえば、MDSリポジトリmds-repos1を登録解除するには、次のコマンドを使用します。
deregisterMetadataDBRepository(name='mds-repos1')
次の各項目では、ファイルベース・メタデータ・リポジトリの作成、登録および登録解除の方法について説明します。
注意: スクリプトで次のMBeanを起動する場合は、次のことに気を付けてください。
今回のリリースおよびこれまでのリリースで、これらのMBeanは次のような動作をします。
ただし、編集セッションは明示的に開始できます。そうした場合、変更の自動アクティブ化は非推奨です。 |
Fusion Middleware Controlを使用して、ファイルベースMDSリポジトリを作成し、Oracle WebLogic Serverドメインに登録できます。
Fusion Middleware Controlを使用して、ファイルベース・リポジトリを作成および登録する手順は次のとおりです。
「WebLogicドメイン」メニューから「その他のサービス」、「メタデータ・リポジトリ」を選択します。
「メタデータ・リポジトリ」ページが表示されます。
「ファイルベース・リポジトリ」セクションで、「登録」をクリックします。
「メタデータ・リポジトリの登録」ページが表示されます。
次の情報を入力します。
「名前」に名前を入力します。たとえば、repos1と入力します。名前に接頭辞mds-
が追加され、mds-repos1という名前のリポジトリが登録されます。mds-
で始まる名前を入力した場合は、指定した名前のリポジトリが登録されます。
「ディレクトリ」で、ディレクトリを指定します。このリポジトリを使用するアプリケーションが実行される管理サーバーと管理対象サーバーには、このディレクトリに対する書込み権限が必要です。
次の点に注意してください。
指定したパスがファイル・システム上に存在する場合は、メタデータ・ファイル・リポジトリが登録されます。このパスの下にあるすべてのサブディレクトリは、このファイルベース・リポジトリのパーティションとして自動的にロードされます。
指定したパスが存在しない場合は、登録中にこの名前のディレクトリがファイル・システム上に作成されます。まだパーティションが作成されていないため、ロードされるサブディレクトリはありません。
指定したパスが無効またはなんらかの理由(権限が拒否されるなど)で作成できない場合は、エラーが表示され、登録は失敗します。
指定したパスがディレクトリではなくファイルとして存在する場合は、エラーは表示されず、登録は成功します。
「OK」をクリックします。
リポジトリが作成および登録され、 「メタデータ・リポジトリ」ページに表示されます。
これでパーティションの作成と削除ができるようになりました。これらの変更は、ファイル・システム上のディレクトリに反映されます。
ファイルベース・リポジトリは、システムMBeanを使用して作成することもできます。システムMBeanブラウザの使用方法の詳細は、第14.3.5項を参照してください。
Fusion Middleware Controlを使用して、ファイルベースMDSリポジトリの登録を解除できます。
Fusion Middleware Controlを使用してファイルベース・リポジトリの登録を解除する手順は次のとおりです。
「WebLogicドメイン」メニューから「その他のサービス」、「メタデータ・リポジトリ」を選択します。
「メタデータ・リポジトリ」ページが表示されます。
「ファイルベース・リポジトリ」セクションで、リポジトリを選択し「登録解除」をクリックします。
「確認」ダイアログ・ボックスで「OK」をクリックします。
ファイルベース・リポジトリが有効の場合は、リポジトリ・リストから削除されます。そうでない場合は、エラーが表示されます。
ファイルベース・リポジトリは、システムMBeanを使用して登録解除することもできます。システムMBeanブラウザの使用方法の詳細は、第14.3.5項を参照してください。
アプリケーションを新しいリポジトリに再関連付けするように、システム・データ・ソースを変更できます。データ・ソースを含むデータベースまたはスキーマを変更できます。これを行うために、Oracle WebLogic Server管理コンソールまたはFusion Middleware Controlを使用できます。Fusion Middleware Controlを使用するには、次の手順を実行します。
「WebLogicドメイン」メニューで「JDBCデータ・ソース」を選択します。
「JDBCデータ・ソース」ページが表示されます。
変更するデータ・ソースを選択します。
選択したデータ・ソースの「JDBCデータ・ソース」ページが表示されます。
「接続プール」タブを選択します。
データベースを変更するには、「データベースURL」フィールドを変更します。次に例を示します。
jdbc:oracle:thin:@hostname.domainname.com:1522/orcl
「パスワード」で、データベースのパスワードを入力します。
スキーマを変更するには、「プロパティ」セクションを変更し、「ユーザー」の値を変更します。
データベースがDB2データベースの場合、プロパティsendStreamAsBlobを値をtrueにして追加します。
「適用」をクリックします。
このデータ・ソースを使用するサーバーを再起動します。
この章のほとんどの手順は、Fusion Middleware ControlまたはWLSTを使用してMDSリポジトリを管理する方法を説明していますが、システムMBeanも使用できます。
「WebLogicドメイン」メニューから、「システムMBeanブラウザ」を選択します。
「システムMBeanブラウザ」ページが表示されます。
このページのナビゲーション・ペインで、「アプリケーション定義のMBean」→「oracle.mds.lcm」を開きます。ドメインを開いてから「MDSDomainRuntime」を開き、「MDSDomainRuntime」を選択します。
「アプリケーション定義のMBean」ペインで、「操作」タブを選択します。
registerMetadataFileRepositoryなど「操作」の1つをクリックします。
「操作」ページが表示されます。
「値」列で、操作の値を入力します。
「起動」をクリックします。
次の各項で説明するように、Fusion Middleware ControlまたはシステムMBeanを使用して、MDSリポジトリに関する情報を表示できます。
Fusion Middleware Controlを使用してMDSリポジトリに関する情報を表示するには:
ナビゲーション・ペインで「メタデータ・リポジトリ」を展開します。
リポジトリを選択します。
次の図は、MDSリポジトリのホーム・ページを示しています。
どのアプリケーションがリポジトリを使用しているかを表示するには、「アプリケーション」列のアイコンをクリックします。「パーティションを使用するアプリケーション」ダイアログ・ボックスが、「デプロイ済アプリケーション」タブおよび「参照元アプリケーション」タブとともに表示されます。
「デプロイ済アプリケーション」タブに、メタデータがリポジトリ・パーティションにデプロイされたアプリケーションのリストが表示されます。
「参照元アプリケーション」タブに、リポジトリ・パーティションに格納されているメタデータを参照するアプリケーションのリストが表示されます。
このページでは、次の操作も実行できます。
第14.3.10.1項で説明するように、パーティションを削除します。
第14.3.12.5項で説明するように、ラベルを削除します。
第14.3.2.2項で説明するように、ターゲット・サーバーを追加または削除します。
システムMBeanのlistPartitions、listRepositories、およびlistRepositoryDetailsの各操作を使用すると、リポジトリ内のパーティションの一覧、リポジトリの一覧、ドメインに登録されているリポジトリの詳細を取得できます。
「WebLogicドメイン」メニューから、「システムMBeanブラウザ」を選択します。
「システムMBeanブラウザ」ページが表示されます。
このページのナビゲーション・ペインで、「アプリケーション定義のMBean」→「oracle.mds.lcm」を開きます。ドメインを開いてから「MDSDomainRuntime」を開き、「MDSDomainRuntime」を選択します。
「アプリケーション定義のMBean」ペインで、「操作」タブを選択します。
listPartitions、listRepositories、listRepositoryDetailsなど「操作」の1つをクリックします。
「操作」ページが表示されます。
「起動」をクリックします。
「戻り値」表に情報が表示されます。
アプリケーションのMDS構成属性を変更する方法の詳細は、第10.8項を参照してください。
アプリケーションはデプロイ時にMDSリポジトリに関連付けできます。その後、WLSTまたはFusion Middleware Controlを使用して、アプリケーションが関連付けられているMDSリポジトリまたはパーティションを変更できます。たとえば、特定のアプリケーションに使用する必要がある別のメタデータが、異なるリポジトリに格納されている場合などです。
アプリケーションを新しいMDSリポジトリまたはパーティションに関連付けるには、次のいずれかを実行します。
新しいリポジトリまたはパーティションを指定して、アプリケーションを再デプロイします。
新しいパーティションを作成するには、次のいずれかを実行します。
パーティションを別のリポジトリにクローニングします。パーティションのクローニングは、タイプとバージョンが同じであるデータベースのデータベース・ベース・リポジトリでのみ有効です。パーティションをクローニングするときは、すべてのカスタマイズおよびラベルも含めて、メタデータのバージョン履歴を保持します。
パーティションのクローニング方法、およびクローニングしたパーティションを指定してアプリケーションを再デプロイする方法は、第14.3.7.1項で説明します。
新しいパーティションを作成し、次に現在のパーティションからメタデータをエクスポートして、新しいパーティションにこのメタデータをインポートします。
パーティションの作成方法、データのエクスポートおよびインポート方法、およびアプリケーションを再デプロイして新しいリポジトリまたはパーティションを指定する方法は、第14.3.7.2項で説明します。
システム・データ・ソースを変更します。システム・データ・ソースを変更すると、そのデータ・ソースが格納されるデータベースまたはスキーマを変更できます。
システム・データ・ソースの変更方法は、第14.3.4項で説明します。
システムMBeanのcloneMetadataPartitionを使用すると、同じリポジトリまたは別のリポジトリにパーティションをクローニングできます。元のリポジトリもターゲット・リポジトリも、データベース・ベース・リポジトリを使用する必要があります。
パーティションをクローニングして、新しいリポジトリまたは同じリポジトリにアプリケーションを再デプロイするには:
システムMBeanのcloneMetadataPartition操作を使用して、パーティションをクローニングします。次の例では、partition1を元のリポジトリから新しいリポジトリにクローニングします。
Fusion Middleware Controlのナビゲーション・ペインから、アプリケーションがデプロイされている管理対象サーバーにナビゲートします。「WebLogicサーバー」メニューから、「システムMBeanブラウザ」を選択します。
「システムMBeanブラウザ」ページが表示されます。
「システムMBeanブラウザ」のナビゲーション・ペインで、「アプリケーション定義のMBean」→「oracle.mds.lcm」を開きます。ドメインを開いてから「MDSDomainRuntime.」を開きます。「MDSDomainRuntime」を選択します。
「アプリケーション定義のMBean」ペインで、「操作」タブを選択します。
次の図では、「システムMBeanブラウザ」に「アプリケーション定義のMBeans」ペインが表示されています。
「cloneMetadataPartiton」を選択します。
「操作: cloneMetadataPartiton」ページが表示されます。
「パラメータ」の表に次の値を入力します。
「fromRepository」に、メタデータ・ドキュメントのクローニング元のメタデータ・パーティションが格納されているメタデータ・リポジトリの名前を入力します。
「fromPartition」に、メタデータ・ドキュメントのクローニング元のパーティションの名前を入力します。
「toRepository」に、ソース・リポジトリ・パーティションのドキュメントのクローニング先とするメタデータ・リポジトリの名前を入力します。
「toPartition」に、ターゲット・パーティションとして使用するメタデータ・リポジトリ・パーティションの名前を入力します。この名前はリポジトリ内で一意にする必要があります。このパラメータに値を指定しない場合、ソース・パーティションの名前がターゲット・パーティションに使用されます。
「toRepository」の名前が元のリポジトリと同じ場合は、パーティション名を入力する必要があります。この名前はリポジトリ内で一意である必要があります。
「起動」をクリックします。
ナビゲーション・ペインでリポジトリを選択して、パーティションが作成されていることを確認します。このパーティションは「メタデータ・リポジトリ」ホーム・ページの「パーティション」表に記載されています。
第10.4.3項または第10.5.3項の説明に従って、アプリケーションのタイプに応じてアプリケーションを再デプロイします。この操作の際には、「アプリケーション属性」ページで新しいパーティションおよびリポジトリを指定します。
リポジトリを変更するには、「リポジトリ名」の横にあるアイコンをクリックします。「メタデータ・リポジトリ」ダイアログ・ボックスでリポジトリを選択し、「OK」をクリックします。
パーティションを変更するには、「パーティション名」にパーティション名を入力します。
アプリケーションを再デプロイして、新しいパーティションを指定することで、同じリポジトリまたは別のリポジトリに新しいパーティションを作成できます。続いて、WLSTを使用して、メタデータを新しいパーティションに転送します。
この手順を使用すると、タイプの異なる2つのリポジトリ間で(ファイルベースからデータベース・ベースへ、またはOracle Databaseから別のデータベースへ)メタデータを転送できます。
新しいパーティションを作成して、アプリケーションを再関連付けする手順は次のとおりです。
WLSTのexportMetadata
コマンドを使用して、ソース・パーティションからファイル・システム上のディレクトリにメタデータをエクスポートします。
exportMetadata(application='sampleApp', server='server1', toLocation='/tmp/myrepos/mypartition', docs='/**')
第10.4.3項または第10.5.3項の説明に従って、アプリケーションのタイプに応じてアプリケーションを再デプロイします。この操作の際には、「アプリケーション属性」ページで新しいパーティションおよびリポジトリを指定します。
リポジトリを変更するには、「リポジトリ名」の横にあるアイコンをクリックします。「メタデータ・リポジトリ」ダイアログ・ボックスでリポジトリを選択し、「OK」をクリックします。
パーティションを変更するには、「パーティション名」にパーティション名を入力します。
WLSTのimportMetadata
コマンドを使用して、ファイル・システムから新しいパーティションにメタデータをインポートします。
importMetadata(application='sampleApp', server='server1', fromLocation='/tmp/myrepos/mypartiton', docs='/**')
また、第14.3.3.2項または第14.3.2.3項の説明に従って、元のリポジトリの登録を解除することもできます。
または、WLSTコマンドcreateMetadataPartition
を使用して、新しいパーティションを作成することもできます。パーティション名はリポジトリ内で一意にする必要があります。このパーティション・パラメータがない場合は、ソース・パーティションの名前がターゲット・パーティションに使用されます。次の例では、パーティションpartition1を作成します。
createMetadataPartition(repository='mds-repos1', partition='partition1')
MDSのメタデータは、別のドメインのパーティションに転送できます。例に示すように、テスト・システムから本番システムにアプリケーションを移行します。テスト・システムのドメインにデプロイされているテスト・アプリケーションと、本番システムのドメインにデプロイされている本番アプリケーションがあります。テスト・システムから本番システムにカスタマイズを転送します。これを実行するには、テスト・システムのパーティションから本番システムのパーティションにメタデータを転送します。
パーティション間でメタデータを転送するには、パーティションからメタデータをエクスポートして、別のパーティションにインポートします。次の各項で説明するように、メタデータの転送にはFusion Middleware ControlまたはWLSTを使用できます。
Fusion Middleware Controlを使用してメタデータを転送する手順は次のとおりです。
ナビゲーション・ペインで「アプリケーションのデプロイ」を展開し、アプリケーションを選択します。
「アプリケーションのデプロイ」メニューで、「MDS構成」を選択します。
次の図のように「MDS構成」ページが表示されます。
「エクスポート」セクションで、次のいずれかを選択します。
「このWebブラウザが稼働しているマシンにあるアーカイブにメタデータ・ドキュメントをエクスポートします。」
「エクスポート」をクリックします。
エクスポート操作では、zipファイルがエクスポートされます。オペレーティング・システムおよびブラウザに応じて、ファイルを保存するかまたはファイルを開くかを質問するダイアログ・ボックスが表示されます。
「このアプリケーションが稼働しているマシンにあるディレクトリまたはアーカイブにメタデータ・ドキュメントをエクスポートします。」
ディレクトリの場所またはメタデータをエクスポートできるアーカイブを入力します。
ドキュメントの転送先のターゲット・ディレクトリまたはアーカイブ・ファイル(.jar、.JAR、.zipまたは.ZIP)は、ソース・パーティションから選択されます。ディレクトリにエクスポートする場合、このディレクトリは、ローカル・ディレクトリまたはネットワーク・ディレクトリ、あるいはアプリケーションが物理的にデプロイされているファイルである必要があります。アーカイブにエクスポートする場合、このアーカイブをローカル・ディレクトリまたはネットワーク・ディレクトリ、あるいはアプリケーションが物理的にデプロイされるファイルにすることができます。または、コマンドを実行しているシステム上にすることもできます。
該当する場所がファイル・システム上に存在しない場合、.jar、.JAR、.zipまたは.ZIPで名前が終わるときにアーカイブ・ファイルが作成される場合を除いて、ディレクトリが作成されます。アーカイブ・ファイルがすでに存在する場合、exportMetadata操作によってファイルが上書きされます。
「エクスポート」をクリックします。次に「確認」ダイアログ・ボックスで、「閉じる」をクリックします。
「ベース・ドキュメントの除外」を選択すると、カスタマイズのみがエクスポートされ、ベース・ドキュメントはエクスポートされません。ベース・ドキュメントおよびカスタマイズについては、第14.3.1項を参照してください。
ターゲット・アプリケーションが別のシステムにある場合は、エクスポートされたメタデータをそのシステムにコピーします。
ターゲット・システムのナビゲーション・ペインで「アプリケーションのデプロイ」を開いてから、アプリケーションを選択します。
「アプリケーションのデプロイ」メニューで、「MDS構成」を選択します。
「MDS構成」ページが表示されます。
「インポート」セクションで、次のいずれかを選択します。
「このWebブラウザが稼働しているマシンにあるアーカイブからメタデータ・ドキュメントをインポートします。」
「このアプリケーションが稼働しているマシンにあるディレクトリまたはアーカイブからメタデータ・ドキュメントをインポートします。」
エクスポートされたメタデータが格納されているディレクトリまたはアーカイブの場所を入力します。ディレクトリを指定する場合は、パーティション名が付けられているサブディレクトリも含めます。このディレクトリまたはアーカイブは、ローカルまたはネットワークのディレクトリ、あるいはアプリケーションが物理的にデプロイされているファイルである必要があります。
「インポート」をクリックします。
「確認」ダイアログ・ボックスで「Close」をクリックします。
WLSTを使用してメタデータを転送する手順は次のとおりです。
exportMetadata
コマンドを使用して、元のパーティションからメタデータをエクスポートします。
exportMetadata(application='sampleApp', server='server1', toLocation='/tmp/myrepos/mypartition', docs='/**')
このコマンドでは、メタデータ・パーティションからファイル・システム・ディレクトリにメタデータ・ドキュメントのバージョニング済のストライプがエクスポートされます。adf-config.xmlのcust-config要素で宣言されたカスタマイズ・クラスのみがエクスポートされます。adf-config.xmlに宣言されたcust-config要素がない場合、すべてのカスタマイズ・クラスがエクスポートされます。
すべてのカスタマイズをエクスポートするには、オプションrestrictCustTo="%"を使用します。
本番アプリケーションが別のシステムにある場合は、エクスポートされたメタデータをそのシステムにコピーします。
WLSTのimportMetadata
コマンドを使用して、メタデータを別のパーティションにインポートします。
importMetadata(application='sampleApp', server='server1', fromLocation='/tmp/myrepos/mypartiton', docs='/**')
fromLocation
パラメータの値は、WLSTを実行しているシステムと同一システム上の場所にするか、またはマップ済のネットワーク・ドライブまたはディレクトリ・マウント上の場所にする必要があります。ネットワーク参照を直接使用することはできません(\\mymachine\repositories\
など)。
adf-config.xmlのcust-config要素で宣言されたカスタマイズ・クラスのみがエクスポートされます。adf-config.xmlに宣言されたcust-config要素がない場合、すべてのカスタマイズ・クラスがエクスポートされます。
すべてのカスタマイズをインポートするには、オプションrestrictCustTo="%"を使用します。
ファイルベース・リポジトリをデータベース・ベース・リポジトリに移動できます。(データベース・ベース・リポジトリからファイルベース・リポジトリへの移動はできません。)
停止時間を最短にするため、ファイルベース・リポジトリからデータベース・ベース・リポジトリにアプリケーションのメタデータを移動するには、次の手順を使用します。
第14.2項の説明に従い、RCUを使用して新しいリポジトリにスキーマを作成します。
ソース・パーティションと一致する名前を使用して、WLSTコマンドcreateMetadataPartition
で新しいパーティションを作成します。
createMetadataPartition(repository='mds-repos1', partition='partition1')
ソース・パーティションからファイル・システム上のディレクトリにメタデータをエクスポートします。
exportMetadata(application='sampleApp', server='server1', toLocation='/tmp/myrepos/partition1', docs='/**')
ファイル・システムから新しいパーティションにメタデータをインポートします。
importMetadata(application='sampleApp', server='server1', fromLocation='/tmp/myrepos/partition1', docs='/**')
第10.4.3項または第10.5.3項の説明に従って、アプリケーションのタイプに応じてアプリケーションを再デプロイします。この操作の際には、「アプリケーション属性」ページで新しいパーティションおよびリポジトリを指定します。
リポジトリを変更するには、「リポジトリ名」の横にあるアイコンをクリックします。「メタデータ・リポジトリ」ダイアログ・ボックスでリポジトリを選択し、「OK」をクリックします。
パーティションを変更するには、「パーティション名」にパーティション名を入力します。
第14.3.3.2項の説明に従って、ファイルベース・リポジトリの登録を解除します。
アプリケーションのデプロイもアプリケーションによる参照も存在しないメタデータ・パーティションは削除できます。リポジトリからのメタデータ・パーティションの削除が必要な場合には、次の状況が考えられます。
アプリケーションのアンデプロイ時。パーティション内のユーザー・カスタマイズなどのメタデータが引き続き必要な場合があるため、Oracle Fusion Middlewareではメタデータ・パーティションが残されます。メタデータが不要な場合は、パーティションを削除できます。
メタデータを別のパーティションに転送し、新しいパーティションを使用するようにアプリケーションを構成した場合。
パーティションをクローニングし、新しいパーティションを使用するようにアプリケーションを構成した場合。
パーティションを削除すると、そのパーティションに含まれるデータはすべて削除されます。
次の各項の説明に従って、WLSTまたはFusion Middleware Controlを使用し、メタデータのパーティションを削除できます。
Fusion Middleware Controlを使用してリポジトリ・パーティションからメタデータ・パーティションを削除する手順は次のとおりです。
ナビゲーション・ペインで「メタデータ・リポジトリ」を展開します。
リポジトリを選択します。
リポジトリのホーム・ページが表示されます。
「リポジトリ・パーティション」セクションで、パーティションを選択し、「削除」を選択します。
「確認」ダイアログ・ボックスで「OK」をクリックします。
メタデータ・パーティションをリポジトリから削除するには、WLSTコマンドdeleteMetadataPartition
を使用できます。たとえば、ファイルベース・リポジトリmds-repos1からメタデータ・パーティションを削除するには、次のコマンドを使用します。
deleteMetadataPartition(repository='mds-repos1', partition='partition1')
データベース・ベースのMDSリポジトリでは、メタデータ・バージョン履歴をパーティションからパージできます。(ファイルベースのMDSリポジトリではバージョン履歴が保持されません。)この操作では、ラベルのないドキュメントのバージョン履歴がアプリケーションのリポジトリ・パーティションからパージされます。最新バージョンはラベルがない場合もパージされません。
メタデータ・ラベルをパージするには、第14.3.12.4項の説明に従って、purgeMetadataLabels
コマンドを使用します。次に、メタデータ・バージョン履歴をパージできます。
データベースのスペース不足またはパフォーマンスの劣化が疑われる場合は、MDSリポジトリのメンテナンスの一環として、メタデータ・バージョン履歴を定期的にパージすることを検討してください。この操作はパフォーマンス集約型であるため、メンテナンス・ウィンドウ内またはシステム使用量の少ないときに実行するようにしてください。MDSは、反復ごとに300のドキュメントを消去し、変更をコミットして、消去可能なドキュメントの処理がすべて終了するまでこの操作を繰り返します。
特定のタイプのアプリケーションに固有の推奨事項については、個々のコンポーネントのドキュメントを参照してください。
次の項の説明にあるように、WLSTまたはFusion Middleware Controlを使用して、メタデータ・バージョン履歴をパージできます。
Fusion Middleware Controlを使用してメタデータ・バージョン履歴をパージする手順は次のとおりです。
ナビゲーション・ペインで「アプリケーションのデプロイ」を展開し、アプリケーションを選択します。
「アプリケーションのデプロイ」メニューで、「MDS構成」を選択します。
Oracle SOA Suiteの場合、ナビゲーション・ツリーで、「SOA」を開き、「soa-infra」を選択します。「SOAインフラストラクチャ」メニューから、「管理」→「MDS構成」を選択します。
「MDS構成」ページが表示されます。
「パージ」セクションで、「次より古い過去のラベルのない全バージョンをパージ」フィールドに時間の数字を入力し、時間の単位を選択します。たとえば、「3」と入力し、「月」を選択します。
「パージ」をクリックします。
「確認」ダイアログ・ボックスで「Close」をクリックします。
WLSTを使用して、メタデータ・バージョン履歴をパージするには、purgeMetadata
コマンドを使用します。olderThan
パラメータで秒数を指定して、パージするドキュメントを指定します。次の例では、100秒以上経過しているすべてのドキュメントがパージされます。
purgeMetadata(application='sampleApp', server='server1', olderThan=100)
MDSAppConfig MBeanを使用して、自動パージを有効化できます。
「WebLogicドメイン」メニューから、「システムMBeanブラウザ」を選択します。
「システムMBeanブラウザ」ページが表示されます。
「アプリケーション定義のMBean」→「oracle.adf.share.config」→「サーバー: 名前」→「アプリケーション: 名前」→「ADFConfig」→「ADFConfig」→「ADFConfig」を開きます。
「MDSAppConfig」を選択します。
「アプリケーション定義のMBean」ページが表示されます。
AutoPurgeTimeToLiveに、値を秒単位で入力します。
「ADFConfig」(MDSAppConfigの親)にナビゲートして選択します。
「操作」タブで、「保存」をクリックします。
メタデータ・ラベルは、メタデータ・リポジトリ・パーティションから各オブジェクトの特定のバージョンを選択する手段です。概念的に、これは一連のドキュメント・バージョン(ドキュメントごとに1バージョン)で、様々なドキュメント・バージョンの水平のストライプを表します。このストライプは、ラベルが作成された時点におけるドキュメントの最先端バージョン(最新のバージョン)で構成されます。
ラベルを使用すると、ラベル作成時点におけるメタデータを表示できます。パーティションに含まれるアプリケーションのメタデータの論理バックアップとリカバリをサポートするWLSTコマンドを使用できます。
ラベルは、データベース・ベース・リポジトリでのみサポートされます。
ラベルに含まれるドキュメント・バージョンは、ラベルを明示的に削除しないかぎり、自動パージでは削除されません。このように、ラベルを作成することによって、ラベルの作成時点におけるメタデータのビューは、ラベルが削除されるまで使用可能です。
MARが含まれるアプリケーションがデプロイされると、接頭辞postDeployLabel_
が付いたラベルが作成されます。たとえば、postDeployLabel_mdsappdb_mdsappdb.mar_2556916398です。
MARにパッチを適用するたびに、新しいデプロイメント・ラベルが作成されますが、以前のデプロイメント・ラベルは削除されません。同様に、MARが含まれるアプリケーションをアンデプロイすると、そのアプリケーションはアンデプロイされますが、ラベルはメタデータ・リポジトリ・パーティションに残ります。
デプロイメント・ラベルを削除する場合、アプリケーションを再起動するとMARは自動的に再デプロイされ、デプロイメント・ラベルも再作成されます。
次の各項目で、ラベルの管理方法について説明します。
MDSリポジトリのパーティション内で、オブジェクトの特定バージョンにラベルを作成するには、WLSTコマンドcreateMetadataLabel
を使用します。たとえば、アプリケーションmy_mds_appにprod1という名前のラベルを作成するには、次のコマンドを使用します。
createMetadataLabel(application='my_mds_app', server='server1', name='prod1') Executing operation: createMetadataLabel. Created metadata label "prod1".
バージョンが複数あるアプリケーションの場合は、applicationVersionパラメータを使用してバージョンを指定する必要があります。
特定のアプリケーションのメタデータ・ラベルを一覧表示できます。これを行うには、WLSTコマンドlistMetadataLabel
を使用します。たとえば、アプリケーションmy_mds_appのラベルを一覧表示するには、次のコマンドを使用します。
listMetadataLabels(application='my_mds_app', server='server1') Executing operation: listMetadataLabels. Database Repository partition contains the following labels: prod1 prod2 postDeployLabel_mdsappdb_mdsappdb.mar_2556916398
バージョンが複数あるアプリケーションの場合は、applicationVersionパラメータを使用してバージョンを指定する必要があります。
メタデータ・ラベルが関連付けられたドキュメントを昇格して、最終バージョンにすることができます。つまり、最新への昇格が可能です。ラベルによって取得されたすべてのドキュメントを以前のバージョンにロールバックする場合にラベルを昇格します。
ラベルを最新に昇格するには、WLSTコマンドpromoteMetadataLabel
を使用します。たとえば、ラベルprod1を昇格する場合は、次のコマンドを使用します。
promoteMetadataLabel(application='my_mds_app', server='server1', name='prod1') Location changed to domainRuntime tree. This is a read-only tree with DomainMBean as the root. For more help, use help(domainRuntime) Executing operation: promoteMetadataLabel. Promoted metadata label "prod1" to tip.
バージョンが複数あるアプリケーションの場合は、applicationVersionパラメータを使用してバージョンを指定する必要があります。
指定した名前のパターンまたは経過時間と一致するメタデータ・ラベルをパージし、使用しなくなったラベルをパージできます。こうすることにより、データベースのサイズが減り、パフォーマンスが向上します。リポジトリからドキュメントやリビジョン履歴をパージする前に、使用しなくなったメタデータ・ドキュメントに関連付けられているラベルを削除する必要があります。
アンデプロイした古いアプリケーションのラベルを削除することが適切と思われる場合もありますが、これらのラベルは削除されていません。MARにパッチを適用するたびに、新しいラベルが作成されますが、以前のラベルは削除されません。
次の各項で説明するように、Fusion Middleware ControlまたはWLSTを使用して、メタデータ・ラベルをパージできます。
Fusion Middleware Controlを使用してメタデータ・ラベルをパージする手順は次のとおりです。
「メタデータ・リポジトリ」を展開します。
リポジトリを選択します。
リポジトリのホーム・ページが表示されます。
「パーティション」を選択し、「ラベルの管理」をクリックします。
次の図のように「ラベルの管理」ページが表示されます。
デフォルトでは、選択したパーティションで1年より長く経過し、デプロイされていないまたはサンドボックスに関連付けられていないすべてのメタデータ・ラベルが表にリストされます。
特定のラベルまたは複数のラベルを検索する手順は次のとおりです。
「ラベル名」で演算子を選択し、フィルタ基準を入力します。文字には大/小文字区別があります。次のワイルドカードを使用できます。
パーセント(%): 任意の数の文字に一致します。
アンダースコア(_): 1文字に一致します。
バックスラッシュ(\): ワイルドカードのエスケープ文字として使用します。
たとえば、文字列postDeployLabel%
では、postDeployLabel
で始まる任意のラベルが返されます。この結果、デプロイ済のMARに関連付けられたラベルが表示されます。
「期間」に2などの数値を入力します。(使用可能な演算子は「次より古い」のみです。)
「期間(単位)」で、「時間」、「日」、「週」、「月」、「年」などの単位を選択します。使用可能な演算子は「次と等しい」のみです。
「検索」をクリックします。
デフォルトでは、サンドボックスに関連付けられているラベルおよびアプリケーションにデプロイ済のラベルは表示されません。これらのラベルを表示するには、「サンドボックス」または「デプロイメント」、あるいは両方を選択します。次の点に注意してください。
サンドボックスに関連付けられたラベルは削除できません。
「デプロイメント」を選択すると、MARデプロイメントに関連付けられたラベルが表示されます。
ラベルを選択し、「選択項目の削除」をクリックします。
「確認」ボックスで、「OK」をクリックします。
特定のデプロイ済アプリケーションで未使用のラベルをすべてパージするには、次の手順を実行します。
「デプロイメント」を選択します。
文字列postDeployLabel_
application_name%
を使用して、名前でフィルタ処理します。
最新(使用中)以外をすべて選択して削除します。(現在使用中の最新のラベルは最初にリストされます。)
「選択項目の削除」をクリックします。
WLSTコマンドのpurgeMetadataLabels
を使用して、指定したパターンまたは経過時間と一致するメタデータ・ラベルをパージできます。このコマンドでは、指定した基準と一致するラベルがパージされますが、そのラベルによって指定されていたメタデータ・ドキュメントは削除されません。
たとえば、指定した名前のパターンと一致し30分よりも長く経過したメタデータ・ラベルすべてをパージするには、次のようにします。
purgeMetadataLabels(repository='mds-myRepos', partition='partition1', namePattern='prod*', olderThanInMin='30') Location changed to domainRuntime tree. This is a read-only tree with DomainMBean as the root. For more help, use help(domainRuntime) Executing operation: purgeMetadataLabels. The following metadata labels were purged: repository=mds-soa,parititon=partition1,namePattern=prod*,olderThanInMin=30:
指定したメタデータ・ラベルを削除するには、WLSTコマンドdeleteMetadataLabel
を使用します。たとえば、アプリケーションmy_mds_appのprod1という名前のラベルを削除するには、次のコマンドを使用します。
deleteMetadataLabel(application='my_mds_app', server='server1', name='prod1')
バージョンが複数あるアプリケーションの場合は、applicationVersionパラメータを使用してバージョンを指定する必要があります。
アプリケーションに関連付けられたラベルを検索するには、第14.3.12.2項の説明に従って、listMetadataLabels
コマンドを使用します。
次の各項目で、メタデータ・リポジトリ・スキーマの管理方法について説明します。
スキーマのパスワードはデータベースに保存されています。パスワードは、一定期間が経過した後に期限切れになることに注意してください。たとえば、デフォルトでは、11gのOracle Databaseのパスワードが180日後に期限切れになります。
ほとんどのコンポーネントでは、データベースのパスワード変更のみを行う必要があります。ただし、Oracle Platform Security Servicesでは追加の手順が必要です。
この項には次のトピックが含まれます:
ほとんどのコンポーネントのスキーマ・パスワード変更では、データベースのパスワードを変更します。
たとえば、スキーマOFM_MDSのパスワードを変更する手順は次のとおりです。
SQL*Plusを使用して、データベースに接続します。SYSDBA権限のあるユーザーとして接続します。
次のコマンドを発行します。
SQL> ALTER USER schema IDENTIFIED BY new_password; COMMIT;
たとえば、OFM_MDSのパスワードをabc123
に変更するには、次のコマンドを使用します。
SQL> ALTER USER OFM_MDS IDENTIFIED BY abc123; COMMIT;
MDSリポジトリ・スキーマ・パスワードを変更する場合は、Oracle WebLogic Server管理コンソールを使用して、対応するMDSリポジトリ・データ・ソースのパスワードを変更する必要があります。
「ドメイン構造」で、「サービス」→「データ・ソース」を選択します。
MDSリポジトリに関連するデータ・ソースをクリックします。
「構成」タブをクリックして、「接続プール」タブをクリックします。
「パスワード」に新しいパスワードを入力します。
「保存」をクリックします。
このデータ・ソースを使用する管理対象サーバーを再起動します。
Oracle Platform Security Servicesのスキーマ・パスワードを変更する手順は次のとおりです。
SQL*Plusを使用して、データベースに接続します。SYSDBA権限のあるユーザーとして接続します。
次のコマンドを発行します。
SQL> ALTER USER schema IDENTIFIED BY new_password; COMMIT;
次の手順に進む前に、コミット・コマンドを必ず発行してください。
WLSTコマンドmodifyBootStrapCredentialを実行して、JPS構成ファイルを更新します。
次のディレクトリからWLSTを起動します。
ORACLE_HOME/oracle_common/common/bin/wlst.sh
modifyBootStrapCredentialsコマンドで、JPS構成ファイルへのフル・パスを指定します。次に例を示します。
modifyBootStrapCredential(jpsConfigFile='/scratch/oracle//config/domains/soa_domain/config/fmwconfig/jps-config.xml',username='schema_username',password='password')
この時点で管理サーバーを起動できますが、ログ・ファイルには次の例外が表示されます。
####<Jun 30, 2014 2:15:09 PM CEST> <Error> <Deployer> <deployer> <AdminServer> <[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <f9d07f66-36d0-462e-83fd-6ca40ac15a8a-00000004> <1402936508655> <BEA-149205> <Failed to initialize the application "opss-data-source" due to error weblogic.application.ModuleException: weblogic.common.resourcepool.ResourceSystemException: Could not connect to 'oracle.jdbc.OracleDriver'. The returned message is: ORA-01017: invalid username/password; logon denied.
このエラーを回避するには、次の手順を実行します。
第14.4.1.1項の手順3で説明するように、データ・ソースの構成を更新します。
Oracle Databaseに格納されるメタデータ・リポジトリの文字セットを変更する方法については、次のサイトにアクセスして、『Oracle Databaseグローバリゼーション・サポート・ガイド』を参照してください。
http://www.oracle.com/technetwork/database/enterprise-edition/documentation/index.html
新しいシステムのデプロイメントには、すべてUnicodeを使用することをお薦めします。システムをUnicodeでデプロイすることにより、操作性、互換性、拡張性の面で多くの利点が得られます。Oracle Databaseを使用すると、Unicodeの利点を利用しながら、高パフォーマンスのシステムをより迅速かつより容易にデプロイすることができます。現在、多言語データのサポートが必要ない場合やUnicodeをまったく必要としていない場合でも、これは新しいシステムにとって長期的には最善の選択となる可能性が高く、最終的に、時間と資金が節約されるとともに、長期にわたって競争上の優位性が確立されます。
SQL Serverデータベースにメタデータを格納する場合で、ロケールを考慮した文字セットが大/小文字を区別しない場合は、データベース・インスタンスの作成時に、大/小文字区別の照合順序を選択する必要があります。RCUを使用してSQL ServerにMDSスキーマを作成する場合は、Unicodeサポートがデフォルトになります。使用要件に応じて、このデフォルト設定はUnicode以外のスキーマを使用するように上書きできます。
Oracle Fusion Middlewareデータベース内のデータの量が非常に多くなった場合、データベースの保守が困難になり、パフォーマンスに影響を及ぼす可能性があります。場合によっては、Oracle Fusion Middlewareは、データを自動的にパージします。また、Oracle Fusion Middlewareがデータの増加を管理する方法(時間とともに蓄積し、パフォーマンスに影響を及ぼす可能性のあるデータをパージするスクリプトなど)を提供する場合もあります。
Oracle Fusion Middlewareのコンポーネントの多くは、データをパージするためにPL/SQL手順として書き込まれたスクリプトを提供します。このスクリプトは、次の場所にあります。
ORACLE_HOME/common/sql/component-name_purge_purgetype.sql
たとえば、Oracle Business Process Managementのログをパージするスクリプトは、次の場所にあります。
ORACLE_HOME/common/sql/bpm_purge_logs.sql
表14-2 にOracle Fusion Middlewareのコンポーネントのデータのパージに関する情報へのポインタを示します。
表14-2 データのパージに関する情報
コンポーネント | 説明 |
---|---|
Oracle Application Development Framework |
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』の一時的な記憶域表のクリーンアップに関する項を参照してください。 |
Oracle Application Development Frameworkビジネス・コンポーネント |
次のスクリプトを使用して、Oracle ADFビジネス・コンポーネントでユーザー・セッションの状態および一時的な永続コレクションの格納に使用されるデータベース内の行をパージします。
ORACLE_HOME/oracle_common/common/sql/adfbc_purge_statesnapshots.sql
PS_TXN表は、自動的にパージされます。 |
Oracle SOA Suite |
『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』のデータベース成長の管理に関する項を参照してください。 |
Oracle WebLogic Server: Oracle Infrastructure Webサービス |
WS-RMがデータベース・ストアを使用している場合、次のスクリプトを使用してデータをパージします。
ORACLE_HOME/oracle_common/common/sql/ows_purge_wsrm_msgs.sql
|
Oracle WebLogic Server: JAXWS Webサービス |
『Oracle WebLogic Server JAX-WS Webサービスの開発』のWebサービス永続性のクリーンアップに関する項の説明に従って、Webサービス永続ストアをクリーンアップします。 WebServicePersistenceMBeanのdefaultMaximumObjectLifetimeフィールドを使用して、オブジェクトの最大ライフタイムを設定します。『WebLogic Server JMXによるカスタム管理ユーティリティの開発』のWebLogic Server MBeanの理解に関する項を参照してください。 |
Oracle WebLogic Server: ステートフルEJB |
構成の必要はありません。データは自動的にパージされます。 |
Oracle WebLogic Server: JMS |
『Oracle WebLogic Server JMSリソースの管理』の基本的なJMSシステム・リソースの構成およびJMSメッセージの管理に関する項を参照してください。 『Oracle WebLogic Serverのパフォーマンスのチューニング』の WebLogic JMSのチューニングに関する項も参照してください。 |
Oracle WebLogic Server: JDBCデータ・ソースまたはファイルベース・データ・ソースのセッション永続性 |
構成の必要はありません。データは自動的にパージされます。 |
MDSリポジトリ |
データの自動パージおよび手動パージの詳細は、第14.3.11項を参照してください。 |
Oracle Web Services Manager |
構成の必要はありません。データは自動的にパージされます。 |
特定の状況では、Oracle Schedulerを使用して、スクリプトの実行を自動化することを検討できます。たとえば、スケジュール済ジョブを設定して、完了インスタンスについて14日前までをパージすることができます。
特定の状況では、Oracle Schedulerを使用して、スクリプトの実行を自動化することを検討できます。たとえば、スケジュール済ジョブを設定して、Oracle SOA Suiteの完了インスタンスについて14日前までをパージすることができます。
Oracle Scheduler(エンタープライズ・ジョブ・スケジューラ)は、Oracle Databaseの一部です。Oracle Schedulerは、DBMS_SCHEDULER PL/SQLパッケージ内の手順および機能によって実装されます。Oracle Schedulerの詳細は、『Oracle Database管理者ガイド』のOracle Schedulerの概念およびジョブの作成、実行、および管理に関する項を参照してください。
WS-RMがデータベース・ストアを使用している場合、次のスクリプトを使用してデータをパージします。
ORACLE_HOME/oracle_common/common/sql/ows_purge_wsrm_msgs.sql