ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Internet Directory管理者ガイド
11g リリース1(11.1.1)
B55919-05
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

S Oracle Internet Directoryに関するトラブルシューティング

この付録では、Oracle Internet Directoryの実行時またはインストール時に発生する可能性のある一般的な問題について説明します。この章の内容は、次のとおりです。


注意:

この付録で言及するOracle Single Sign-OnおよびOracle Delegated Administration ServicesはすべてOracle Single Sign-On 10g(10.1.4.3.0)以上およびOracle Delegated Administration Services 10g(10.1.4.3.0)以上のことです。


S.1 問題と解決方法

この項では、Oracle Internet Directoryの一般的なエラー・メッセージ、問題点および解決方法について説明します。この付録には、次の項があります。

S.1.1 インストール・エラー

Oracle Databaseのインストール時および構成時には、マルチバイト・キャラクタに伴う問題を回避するため、キャラクタ・セットAL32UTF8を選択することをお薦めします。

S.1.2 Oracle Databaseサーバー・エラー

Oracle Internet DirectoryはOracle Databaseに依存するため、データベース・エラーによりディレクトリ・サーバーの問題が発生することがあります。この項では、Oracle Internet Directoryのログに表示されるデータベース・エラーを示します。

S.1.2.1 Oracle Databaseサーバー接続の停止

Oracle Internet Directoryが停止しています。ログ・ファイルにORA-3113またはORA-3114が記録されています。

問題

Oracle Internet DirectoryのOracle Databaseとの接続が失われています。

解決方法

データベースとリスナーのステータスを、これらが稼働しているホストで直接あるいは間接的に確認します。必要に応じて再起動します。OIDMONでデータベースの起動が自動的に検出され、OIDLDAPDサーバーが再起動されます。

S.1.2.2 クライアント接続の中断が原因のOracle Databaseサーバー・エラー

エラーsgslunrReadまたは30SendPortが表示されます。

問題

これらのエラーは、LDAPクライアントの接続が突然切断されたことを示しています。

考えられる原因は次のとおりです。

  • クライアント・プログラムが、バインド解除や中止を実行せずに、接続を終了した。

    クライアントのマシンが停止した。

  • ネットワークのコンポーネント(ロード・バランサやファイアウォールなど)が、構成されたタイムアウト設定が原因で接続を切断した。

  • ネットワークが停止中。

解決方法

これらのエラーは、サーバー外部の状況が原因です。必要な場合は、ネットワーク管理者に報告してください。

S.1.2.3 スキーマ変更が原因のOracle Databaseサーバー・エラー

エラーORA-1562が表示されます。

問題

ロールバック・セグメント領域に収まらないスキーマ・コンポーネントを追加しようとすると、このエラーが発生し、変更はコミットされません。

解決方法

この問題を解決するには、データベース・サーバーのロールバック・セグメントのサイズを増やします。

S.1.3 ディレクトリ・サーバーのエラー・メッセージとその原因

この項では、発生する可能性のあるOracleディレクトリ・サーバーのエラー・メッセージを示します。各メッセージに続いて、そのエラーに関して最も可能性の高い原因が記述されています。『Oracle Fusion Middleware Error Messages Reference』も参照してください。

S.1.3.1 不適切な認証エラー

サーバーに対して匿名ユーザーによるバインドを実行しようとすると、コマンドラインに次のエラー・メッセージが表示されます。

ldap_bind: Inappropriate authentication
ldap_bind: additional info: Server is Configured to Deny Anonymous Binds

問題

匿名バインドが無効になっています。ほとんどの環境では、一部のクライアントのみが匿名アクセスを必要とします。

解決方法

匿名ユーザーによるバインドを有効にしてください。


関連項目:

詳細は、第33.7項「匿名バインドの管理」を参照してください。


S.1.3.2 ユーザーまたはグループを編集したか、レルムを作成したことが原因の制約違反エラー

oidldap*.log次のエラーが記録されます。

ORA-01483: invalid length for DATE or NUMBER bind variable.

次のエラーも画面に表示される場合があります。

LDAP: error code 19 - Constraint Violation

これらのエラーは断続的に発生する場合があります。

問題

AL32UTF8キャラクタ・セットを使用するOracle 10g DatabaseにOracleAS Metadata Repositoryをロードした場合、ユーザーやグループを編集しようとしたり、Oracle Internet Directoryにアイデンティティ管理レルムを作成しようとしたりすると、エラーが発生することがあります。ユーザーの編集には、既存ユーザーの属性を編集する作業も含まれます。

解決方法

しばらくしてから、ユーザーをもう一度編集してください。

S.1.3.3 Oracleディレクトリ・サーバーから戻される標準エラー・メッセージ

表S-1に、標準エラー・メッセージとその原因を示します。Oracle Internet Directoryは、第S.1.3.4項「ディレクトリ・サーバーのその他のエラー・メッセージ」でリストされ、説明されているメッセージ以外のメッセージも戻します。

表S-1 標準エラー・メッセージ

エラー 原因

00: LDAP_SUCCESS

操作が正常に完了しました。

01: LDAP_OPERATIONS_ERROR

リクエストの処理時に、サーバーで一般的なエラーが発生しました。

02: LDAP_PROTOCOL_ERROR

クライアントのリクエストが、書式、構文などのLDAPプロトコル要件を満たしていませんでした。これは、次のような状況で発生します。サーバーで受信リクエストの解析中にデコード・エラーが発生した場合。リクエストが、エントリへの属性タイプの追加を指定する追加または変更リクエストであるのに、値が指定されていない場合。SSL資格証明の読取りでエラーが発生した場合。不明なタイプの変更操作が指定されている場合(LDAP_MOD_ADD、LDAP_MOD_DELETEおよびLDAP_MOD_REPLACE以外)。検索範囲が不明な場合。

03: LDAP_TIMELIMIT_EXCEEDED

検索時間が指定した制限時間を超えました。検索の制限時間が未指定の場合、Oracle Internet Directoryでは、デフォルトの制限時間である1時間が使用されます。

04: LDAP_SIZELIMIT_EXCEEDED

検索の問合せに一致するエントリが、指定したサイズ制限を超えました。検索のサイズ制限が未指定の場合、Oracle Internet Directoryでは、デフォルトのサイズ制限1000が使用されます。

05: LDAP_COMPARE_FALSE

指定した値は、エントリ内の値と同一ではありません。

06: LDAP_COMPARE_TRUE

指定した値は、エントリ内の値と同一です。

07: LDAP_STRONG_AUTH_NOT_SUPPORTED

リクエストしたバインド方法がサーバーでサポートされていません。たとえば、SASLクライアントがOracle Internet DirectoryによるKerberos認証をリクエストすると、このエラーを受け取ります。

09: LDAP_PARTIAL_RESULTS

サーバーから参照が戻されました。

10: LDAP_REFERRAL

サーバーから参照が戻されました。

12: LDAP_UNAVAILABLE_CRITICALEXTENSION

指定したリクエストはサポートされていません。

16: LDAP_NO_SUCH_ATTRIBUTE

リクエストで指定したエントリ内に、該当する属性は存在していません。

17: LDAP_UNDEFINED_TYPE

指定した属性の型が、スキーマ内で定義されていません。

19: LDAP_CONSTRAINT_VIOLATION

リクエスト内の値が、特定の制約に違反しています。

20: LDAP_TYPE_OR_VALUE_EXISTS

属性に指定した値が重複しています。

21: LDAP_INVALID_SYNTAX

指定された属性構文が無効です。検索のフィルタ構文が無効です。

32: LDAP_NO_SUCH_OBJECT

操作用に指定したベースが存在していません。

34: LDAP_INVALID_DN_SYNTAX

識別名構文にエラーがあります。

49: LDAP_INVALID_CREDENTIALS

資格証明が正しくないため、バインドに失敗しました。

50: LDAP_INSUFFICIENT_ACCESS

クライアントに、この操作を実行するためのアクセス権限がありません。

53: LDAP_UNWILLING_TO_PERFORM

一般的なエラーか、またはサーバーが読取り専用モードです。

65: LDAP_OBJECT_CLASS_VIOLATION

エントリに対する変更が、オブジェクト・クラスの定義に違反しています。

66: LDAP_NOT_ALLOWED_ON_NONLEAF

削除対象のエントリに子エントリがあります。

67: LDAP_NOT_ALLOWED_ON_RDN

相対識別名属性でこの操作は実行できません。たとえば、エントリの相対識別名属性を削除することはできません。

68: LDAP_ALREADY_EXISTS

追加条件が重複しています。

81: LDAP_SERVER_DOWN

ディレクトリ・サーバーと通信できません。このメッセージはSDKから戻されます。

82: LDAP_LOCAL_ERROR

クライアントで内部エラーが発生しました。このメッセージはクライアントのSDKから戻されます。

83: LDAP_ENCODING_ERROR

クライアントで、リクエストをエンコーディングするときにエラーが発生しました。このメッセージはSDKから戻されます。

84: LDAP_DECODING_ERROR

クライアントで、リクエストをデコードするときにエラーが発生しました。このメッセージはSDKから戻されます。

85: LDAP_TIMEOUT

クライアントが、その操作に指定したタイムアウトに達しました。このメッセージはSDKから戻されます。

86: LDAP_AUTH_UNKNOWN

認証方式が、クライアントのSDKで理解されません。

87: LDAP_FILTER_ERROR

検索フィルタが正しくありません。

88: LDAP_USER_CANCELLED

ユーザーが操作を取り消しました。

89: LDAP_PARAM_ERROR

LDAPルーチンに対するパラメータが正しくありません。

90: LDAP_NO_MEMORY

メモリー不足です。


S.1.3.4 ディレクトリ・サーバーのその他のエラー・メッセージ

表S-2に、ディレクトリ・サーバーのその他のエラー・メッセージとその原因を示します。これらのメッセージには、エラー・コードは表示されません。

Oracle Internet Directoryアプリケーションは、次のメッセージの一部に表示されるparameterタグを適切な実行時の値で置き換えます。

表S-2 その他のエラー・メッセージ

エラー 原因

%s属性が見つかりません。

特定の属性の型が、スキーマに定義されていません。

parameterが属性parameterに見つかりません。

値がその属性に見つかりません。(ldapmodify)

オブジェクト・クラスparameterのスキーマ情報が管理ドメインに含まれていません。

リクエストで指定したオブジェクト・クラスが、スキーマに存在していません。

クラスの追加に使用したOID parameterは別のクラスで使用されています。

指定したオブジェクト識別子が重複しています。(スキーマ変更)

属性parameterはすでに使用されています。

属性名が重複しています。(スキーマ変更)

属性parameterに構文エラーがあります。

属性名の定義に構文エラーがあります。(スキーマ変更)

属性parameterはこのスキーマでサポートされていません。

属性が定義されていません。(すべての操作)

属性parameterは単一の値です。

属性は単一値です。(ldapaddおよびldapmodify)

属性parameterがエントリに存在していません。

エントリに、この属性は存在していません。(ldapmodify)

属性の定義が正しくありません。

属性の定義に構文エラーがあります。(スキーマ変更)

現在はサポートされていません

このバージョンのLDAPリクエストは、このサーバーではサポートされていません。

削除対象のエントリが見つかりません。

削除操作に指定した識別名が見つかりません。

変更対象のエントリが見つかりません。

リクエストで指定したエントリが見つかりません。

parameterをエントリに追加中にエラーが発生しました。

modifyのadd操作が呼び出されたときに戻されました。システム・リソースが使用できないことが原因と考えられます。

属性値の暗号化時にエラーが発生しました。

ユーザー・パスワードの暗号化時にエラーが発生しました。(すべての操作)

DNの正規化でエラーが発生しました。

指定されたDNが無効です。DNの解析で構文エラーが発生しました。(すべての操作)

parameter属性のハッシングでエラーが発生しました。

属性に対するハッシュ・エントリの作成時にエラーが発生しました。(スキーマ変更)

parameterオブジェクト・クラスのハッシングでエラーが発生しました。

オブジェクト・クラスに対するハッシュ・エントリの作成時にエラーが発生しました。(スキーマ変更)

スキーマ・ハッシュの作成でエラーが発生しました。

スキーマに対するハッシュ表作成時にエラーが発生しました。(スキーマ変更)

parameterの置換でエラーが発生しました。

この属性の置換でエラーが発生しました。(ldapmodify)

属性parameterに対する値の正規化時にエラーが発生しました。

属性に対する値の正規化時にエラーが発生しました。(すべての操作)

parameterが必須またはオプションの属性リストで見つかりません。

指定した属性が、オブジェクト・クラスの要件どおりに、必須属性またはオプション属性のリストに存在していません。

この機能は組み込まれていません

その機能またはリクエストが現在はサポートされていません。(検索で索引付けされていない属性を指定するとこのエラーが生成されることがあります。)

無効な非同期通信インタフェースはparameterです。

リクエストで指定した特定のアクセス制御情報アイテム(ACI)が無効です。

必須属性parameterが管理ドメインparameterに定義されていません。

未定義の属性を参照しています。(スキーマ変更)

必須属性が不足しています。

特定のエントリに対する必須属性が、特定のオブジェクト・クラスの要件どおりに存在していません。

一致規則parameterが定義されていません。

サーバーに一致規則が定義されていません。(スキーマ変更)

最大接続数に達しました

LDAPサーバーへの最大同時接続数に達しました。

DNを変更せずにエントリの命名属性を変更しようとしています。

ldapmodifyを使用して命名属性を変更することはできません。cnなどの命名属性は識別名の要素です。

新しい親が見つかりません。

識別名の変更操作で指定した新しい親が存在していません。(ldapmodifydn)

オブジェクトはすでに存在しています。

エントリが重複しています。(ldapaddおよびldapmodifydn)

オブジェクトID parameterはすでに使用されています。

指定したオブジェクト識別子が重複しています。(スキーマ変更)

オブジェクト・クラスparameterはすでに使用されています。

オブジェクト・クラス名が重複しています。(スキーマ変更)

オブジェクト・クラスの属性が不足しています。

この特定のエントリに対するオブジェクト・クラスの属性が不足しています。

OID parameterに構文エラーがあります。

オブジェクト識別子の定義に構文エラーがあります。(スキーマ変更)

エントリ内の属性の1つに重複した値があります。

作成中のエントリで、同じ属性に対して値を2つ入力しました。

parameterでの操作は許可されていません。

このエントリでの操作は許可されていません。(変更、追加および削除)

ディレクトリ・サーバー・エントリでの操作は許可されていません。

ディレクトリ・サーバー・エントリで、この操作を行うことはできません。(削除)

オプション属性parameterが管理ドメインparameterに定義されていません。

未定義の属性を参照している可能性があります。(スキーマ変更)

ディレクトリ内に親のエントリが見つかりません。

親エントリが存在していません。(ldapaddおよびldapmodifydn)

スーパー・オブジェクトparameterが管理ドメインparameterに定義されていません。

スーパー・タイプが、存在していないクラスを参照しています。(スキーマ変更)

スーパー・タイプが未定義です。

スーパー・タイプが存在していません。(スキーマ変更)

スーパー・ユーザーの追加は許可されていません。

スーパーユーザー・エントリを作成できません。(ldapadd)

構文 parameterが未定義です。

構文がサーバーに定義されていません。(スキーマ変更)

RDNで指定された属性または値がエントリ内に存在していません。

相対識別名(RDN)として指定した属性値がエントリ内に存在していません。(ldapadd)

検索範囲が不明です。

LDAPリクエストで指定した検索範囲が認識されません。

このバージョンはサポートされていません

このバージョンのLDAPリクエストは、このサーバーではサポートされていません。

別名に問題があります。

次のいずれかの問題が発生しました。

  • 別名を間接参照しましたが、その別名がDIT内のエントリを指し示していません。

  • 親が別名である別名エントリを追加しようとしました。

別名の参照解除に問題があります。

アクセス制御上の問題であるため、別名を間接参照できません。

該当するオブジェクトがありません。

検索リクエストに指定されたベース識別名をサーバーで検索できません。

DN構文に誤りがあります。

aliasedObjectNameに指定された値に無効な識別名の構文が含まれている場合に別名エントリを追加または変更すると、ディレクトリ・サーバーがクライアントにこのエラー・メッセージを返します。

不十分なアクセス権限

ユーザーが間接参照されたエントリへのアクセス権限を持っていません。


S.1.4 Oracle Internet Directoryのクラッシュ時のコア・ダンプとスタック・トレースの取得

Oracle Internet Directoryがクラッシュしたときに得られる情報の種類は、インスタンス固有の構成エントリのorclsdumpflag属性を変更して制御できます。

サーバーがクラッシュした場合、次のディレクトリにコア・ファイルが残されます。

ORACLE_INSTANCE/diagnostics/logs/OID 

orclsdumpflag0に設定されている場合、サーバーがクラッシュすると、コア・ダンプに加えてスタック・トレースも残されます。スタック・トレースの場所は次のとおりです。

ORACLE_INSTANCE/diagnostics/logs/OID/compName/oidldapd_stack00_pid.dmp 

オペレーティング・システム固有の設定によっては、コア・ダンプまたはスタック・トレースの生成が影響を受ける場合があります。オペレーティング・システムのドキュメントで、次の設定が必要かどうかを確認します。

  • コア・ダンプを有効にするためにcoredumpパラメータを設定する必要があります。

  • ulimitコマンドで指定されている最大ファイル・サイズが、コア・ダンプに十分な大きさであることが必要です。

  • ORACLE_HOME/bin/oidldapdのバイナリ・ファイルのファイル権限でグループによる読取りが許可されている必要があります。次のように入力してグループに読取り権限があることを確認できます。

    chmod g+r $ORACLE_HOME/bin/oidldapd 
    

    これはルート・ユーザーで行います。

S.1.5 TCP/IPの問題

オペレーティング・システムのTCP/IPの不具合によって、Oracle Internet Directoryサービスに影響が及ぶ場合があります。

S.1.5.1 Windows 2003 Server上でサーバーの可用性を監視するときはTCPベースの監視を使用しない

F5ロード・バランサを使用してOracle Internet Directoryサーバーの可用性を監視する場合は、『Oracle Fusion Middleware高可用性ガイド』のOracleASクラスタ(アイデンティティ管理)用のロード・バランサの構成に関する説明を参照して、LDAPベースまたはHTTPベースの監視を使用するようにロード・バランサを構成します。TCPベースの監視を使用すると、Microsoft Windows 2003 Serverのオペレーティング・システム・バグのため、サービスが使用できなくなることがあります。

S.1.5.2 DaimondCS Port Explorerをインストールしない

システムにDaimondCS Port Explorerがインストールされていると、Oracle Internet Directoryは動作しません。

S.1.6 パスワード・ポリシーに関するトラブルシューティング

この項では、パスワード・ポリシーに関連したエラー・メッセージと問題について説明します。

S.1.6.1 パスワード・ポリシーが適用されない

パスワード・ポリシーが、特定のユーザーまたは一連のユーザーに適用されていません。たとえば、ユーザーは、定義されているパスワード・ポリシーによって許可されていない構文を使用してパスワードをリセットできます。

問題

パスワード・ポリシーの作成のみでは十分でありません。ポリシーによって管理されるサブツリーも指定する必要があります。

解決方法

ポリシーの識別名を指定したpwdPolicysubentry属性を追加し、サブツリーのルートに移入します。

S.1.6.2 パスワード・ポリシーのエラー・メッセージ

表S-3に、パスワード・ポリシー違反が発生した結果、クライアントに送信されるエラー・メッセージを示します。エラー・コードは、標準のLDAPエラー・コードではありません。このエラー・メッセージは、LDAP結果の追加情報の一部として送信されます。

表S-3 パスワード・ポリシー違反のエラー・メッセージ

エラー番号 例外 コメントまたは解消方法

9000

GSL_PWDEXPIRED_EXCP

ユーザー・パスワードが期限切れです。

9001

GSL_ACCOUNTLOCKED_EXCP

ユーザー・アカウントがロックされています。

9002

GSL_EXPIREWARNING_EXCP

ユーザー・パスワードがpwdexpirewarning秒後に期限切れになります。すぐにパスワードを変更してください。

9003

GSL_PWDMINLENGTH_EXCP

ユーザー・パスワードが必要な文字数に達していません。

9004

GSL_PWDNUMERIC_EXCP

ユーザー・パスワードに必要な数字が含まれていません。

9005

GSL_PWDNULL_EXCP

ユーザー・パスワードがNULLです。これは許可されていません。

9006

GSL_PWDINHISTORY_EXCP

ユーザーの新規パスワードが、履歴に保存されている旧パスワードと同じです。これは認められません(pwdinhistory属性が、履歴に保存されているパスワード数を制御します)。

9007

GSL_PWDILLEGALVALUE_EXCP

入力されたユーザー・パスワードは、orclpwdillegalvaluesで定義されている無効な値ですので、使用できません。

9008

GSL_GRACELOGIN_EXCP

ユーザー・パスワードが期限切れです。ユーザーには、pwdgraceloginlimit猶予ログインが残っているか、猶予ログインが許されるorclpwdgracelogintimelimitの時間(秒)があります。

9012

GSL_PWDALPHA_EXCP

パスワードには、少なくともorclpwdminalphachars英文字を含める必要があります。

9013

GSL_PWDSPECIAL_EXCP

パスワードには、少なくともorclpwdminspecialchars特殊文字を含める必要があります。

9014

GSL_PWDUPPER_EXCP

パスワードには、少なくともorclpwdminuppercase大文字を含める必要があります。

9015

GSL_PWDMAXCHAR_EXCP

パスワードには、orclpwdmaxrptchars繰り返し文字しか含められません。

9016

GSL_PWDLOWER_EXCP

パスワードには、少なくともorclpwdminlowercase小文字を含める必要があります。

9017

GSL_EC_PWDPOLSUBENTINV

指定されたpwdPolicysubentryは無効です。(識別名は、ディレクトリに存在する有効なパスワード・ポリシーのものではありません。)

9018

GSL_EC_PWDPOLINUSE

削除しようとしているpwdPolicyエントリは、現在使用中です。(パスワード・ポリシー自体を削除する前に、パスワード・ポリシーに対する参照を削除する必要があります。)

9019

GSL_EC_PWDPOLOBJ

pwdPolicyエントリの識別名は、変更できない可能性があります。

9020

GSL_PWDMINAGE_EXCP

パスワードは、少なくともpwdminageの秒数が経ってからでないと変更できません。

9032

GSL_EC_GRACE_CONST

orclgracelogintimelimitpwdgraceloginlimitは、互いに排他的です。どちらもゼロ以外にはできません。

9033

GSL_EC_NOROOTDSEPWDPOL

ルートDSEのpwdpolicysubentry属性は、削除できません。(これは、適用可能なパスワード・ポリシーなしにディレクトリから出てしまうので、許可されません。)

9034

GSL_EC_NOTROCPWDPOL

ルートOracleコンテキストで定義されたパスワード・ポリシーのみが、ルートDSEで適用できます。(これにより、ディレクトリ全体の権限を持つ管理者が指定したポリシーのみが、ディレクトリ全体に適用できることが保証されます。)

9050

GSL_ACCTDISABLED_EXCP

ユーザー・アカウントが使用禁止になっています。


S.1.7 ディレクトリのパフォーマンスに関するトラブルシューティング

この項では、一般的なパフォーマンス関連の問題を解決するための簡単な説明を示します。

S.1.7.1 LDAP検索のパフォーマンスが不十分

LDAP検索のパフォーマンスが不十分です。

問題

様々な問題があります。

解決方法

次のことを確認してください。

  • ODSユーザーに関連付けられているスキーマがANALYZEDであること

  • 複数のフィルタ・オペランドを含む検索の場合は、フィルタの指定順序が、最も特殊な条件から最も一般的な条件の順であることを確認します。たとえば、&(objectclass=person)(uid=john.doe)よりも&(uid=john.doe)(objectclass=person)の方が適切です。

第S.1.7.3項「Oracle Databaseサーバーのパフォーマンスが不十分」も参照してください。

S.1.7.2 LDAP追加または変更のパフォーマンスが不十分

LDAP追加または変更のパフォーマンスが不十分です。

問題

様々な問題があります。

解決方法

次のことを確認してください。

  • データベースに十分な数のREDOログ・ファイルがあること

  • データベースのUNDO表領域の大きさが十分であること

  • ODSユーザーに関連付けられているスキーマがANALYZEDであること

統計を見積もる際には、OIDデータベース統計収集ツールを使用して、様々なデータベースODSスキーマ・オブジェクトを分析することができます。

第24章「ロギングの管理」で説明したトレース機能とデータベース・トレース・イベント10046は、パフォーマンスの問題を診断する際に役立ちます。


関連項目:

OIDデータベース統計収集ツールの使用方法は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』oidstats.sqlコマンドライン・ツールのリファレンスを参照してください。

検索を最適化する手順は、『Oracle Fusion Middlewareパフォーマンスおよびチューニング・ガイド』の「Oracle Internet Directory」の章を参照してください。

グループ・エントリのパフォーマンスに関する問題の詳細は、http://metalink.oracle.comにあるMy Oracle Support(以前のMetaLink)のNote 243006.1を参照してください。


S.1.7.3 Oracle Databaseサーバーのパフォーマンスが不十分

問題

Oracle データベース・サーバーで、LDAP検索操作時に多くのプロセッサ・リソースが使用されています。

解決方法

次のようにします。

  1. 次を実行して、プロセッサ使用率の高いLDAP操作を特定します。

    oidctl connect=connstr status -diag
    

    このコマンドでLDAP操作と、これに対応して実行されるSQLが表示されます。

  2. この種の問合せに対してデータベースを適切にチューニングします。『Oracle Fusion Middlewareパフォーマンスおよびチューニング・ガイド』の「Oracle Internet Directory」の章を参照してください。

  3. 可能なら、アプリケーションの検索シグネチャを変更します。不可能な場合は、Oracle Internet Directory属性orclinmemfiltprocessをチューニングします。『Oracle Fusion Middlewareパフォーマンスおよびチューニング・ガイド』の「Oracle Internet Directory」の章を参照してください。

S.1.8 ポート構成に関するトラブルシューティング

Oracle Internet DirectoryディスパッチャがSSLおよび非SSL接続に使用するポートは、次のようにして特定できます。

  • Oracle Enterprise Manager Fusion Middleware ControlでOIDメニューから「ポートの使用状況」を選択します。

  • コマンドラインから次を実行します。

    ORACLE_INSTANCE/bin/opmnctl status -l
    
  • コマンドラインから次を実行します。

    oidctl connect=oiddb status
    

S.1.9 opmnctlを使用したOracle Internet Directoryコンポーネントの作成に関するトラブルシューティング

問題

コマンドopmnctl createcomponentが失敗し、ファイルORACLE_INSTANCE/diagnostics/logs/OPMN/opmn/provision.logに次のエラーが表示されます。

INFO: $ORACLE_INSTANCE/config/tnsnames_copy.ora file does not exist

解決方法

次の条件を満たしていることを確認します。

  • ファイルORACLE_INSTANCE/config/tnsnames_copy.oraが存在しています。

  • OIDDB connectStringがORACLE_INSTANCE/config/tnsnames.oraにあります。

  • ORACLE_INSTANCE/config/OPMN/opmn/opmn.xmlのOIDスニペットのconnectStringが、ORACLE_INSTANCE/config/tnsnames.oraのものと同じです。デフォルトはOIDDBです。

次に、opmnctl createcomponentを再試行します。

S.1.10 Oracle Internet Directoryの起動に関するトラブルシューティング

この項では、Oracle Internet Directoryの起動時に起こる可能性のある問題について説明します。

S.1.10.1 Oracle Internet Directoryが停止している

問題

Oracle Enterprise Manager Fusion Middleware ControlでOracle Internet Directoryが停止していると表示されます。コマンド

opmnctl status

で、oidmonとすべてのoidldapdプロセスが停止していると示されます。

解決方法

OPMNログORACLE_HOME/opmn/logs/opmn.logで、oidmonが起動しない理由を確認します。

問題

Oracle Enterprise Manager Fusion Middleware ControlでOracle Internet Directoryが停止していると表示されます。コマンド

opmnctl status

で、oidmonは稼働しているがoidldapdプロセスは停止していると示されます。

解決方法

次のログを次に示す順に確認します。

  1. oidmonログORACLE_INSTANCE/diagnostics/logs/OID/componentName/oidmon-0000.logには、oidmonoidldapdプロセスを起動できない原因の詳細が含まれています。最も一般的な問題は次のとおりです。

    • Oracle Databaseに接続できない: Oracleデータベースとリスナーが稼働していることを確認します。

    • 2つのノードの時差が250秒より大きい: システム時間を調整します。

    • oidmonoidldapdプロセスの起動を再試行し続けますが、起動に失敗します。デバッグするには、手順2を参照してください。

  2. Oracle Internet Directoryディスパッチャ・ログORACLE_INSTANCE/diagnostics/logs/OID/componentName/oidldapd01-0000.logには、oidldapdサーバー・プロセスの起動に失敗した原因に関する情報が含まれています。最も一般的な原因は次のとおりです。

    • Oracle Internet Directory用に構成されたポートが空いていない: 次を実行します。

       netstat -an | grep oidPort
       
      

      ポートが空くかどうかを確認します。

    • UNIXまたはLinuxシステムでは、Oracle Internet Directoryは1024未満のポート番号でリスニングするよう構成されています。また、実行可能バイナリ・ファイルORACLE_HOME/bin/oidldapdは、rootに所有されておらず、setuidビットがセットされていません。

    • oidldapdディスパッチャはoidldapdサーバー・プロセスの生成を続けますが、稼働に失敗します。この場合、UNIXまたはLinuxのpsまたはWindowsのタスク・マネージャを使用すると、1つのoidldapdディスパッチャ・プロセスが稼働していることがわかる場合があります。デバッグするには、手順3を参照してください。

  3. Oracle Internet Directoryサーバー・ログORACLE_INSTANCE/diagnostics/logs/OID/componentName/oidldapd01sPID-0000.logには、サーバー・プロセスの稼働に失敗した原因に関する情報が含まれています。一般的な問題は次のとおりです。

    • Oracle Database接続プールが作成できない: Oracle DatabaseのPROCESSESパラメータを確認し、必要に応じて値を増やします。

    • Oracle Internet DirectoryがSSLウォレット・ファイルを使用するよう構成されていますが、ファイルにアクセスできません。

S.1.10.2 Oracle Internet Directoryが読取り専用

問題

Oracle Internet Directoryサーバーが読取り専用モードで起動します。

解決方法

これは、通常Oracle Internet Directoryサーバーが、間違ったスキーマに対して起動されたことを表します。確認するには、次の2つのコマンドを入力します。

oidldapd -v

ldapsearch -p oidPort -D cn=orcladmin -q -b "" -s base "objectclass=*" Orcldirectoryversion

これらのコマンドで異なるバージョンが表示される場合、サーバーは読取り専用モードで起動します。

S.1.11 ディレクトリ・サーバーの起動、停止および再起動に関するトラブルシューティング

ディレクトリ・サーバーの起動および停止に関するトラブルシューティングを行うには、関係する各ツールの目的、すべてのツールがどのように連携するか、およびサーバーの起動および停止のプロセス全般について知っておく必要があります。


関連項目:

『Oracle Fusion Middlewareパフォーマンスおよびチューニング・ガイド』の「Oracle Internet Directory」の章


S.1.11.1 ディレクトリ・サーバー・インスタンスを起動、停止および再起動するためのツールの概要

次のように入力して、ディレクトリ・サーバー・インスタンスを起動します。

opmnctl startproc process-type=OID
opmnctl stopproc process-type=OID 

OIDCTL OIDCTLを実行すると、OIDCTLはユーザーODSとしてデータベースに接続します。コマンドで使用するオプションに応じて、ODS.ODS_PROCESS_STATUS_STATUSという表に行を挿入するか、この表の行を更新します。STARTオプションを使用すると、行が挿入されます。STOPまたはRESTARTオプションを使用すると、行が更新されます。

ODS.ODS_PROCESS_STATUS表には次の情報が含まれています。

  • instance: 一意のインスタンス番号。0から1000の任意の値です。

  • pid: プロセス識別子。プロセスが起動されると、OIDMONによって更新されます。

  • state: リクエストされた操作のタイプ。

    stateの値は次のいずれかです。

    • 0=停止

    • 1=起動

    • 2=実行中

    • 3=再起動

    • 4=シャットダウン

    • 5=フェイルオーバー済


注意:

OPMNがディレクトリ・サーバーを停止した場合、stateの値は当初4(シャットダウン)です。ただし、OPMNが再度ディレクトリ・サーバーを起動すると、stateの値は2(実行中)になります。


OIDMON ディレクトリ・サーバー・インスタンスを起動、停止または再起動するには、OIDMONが実行中であることが必要です。このデーモンは、ODS.ODS_PROCESS_STATUS表のstate列の値を指定の間隔でチェックします。

state=0の行が見つかると、pidを読み取ってプロセスを停止します。
state=1またはstate=4の行が見つかると、新規プロセスを起動し、pid列を新しいプロセス識別子で更新します。
state=2の行が見つかると、pidを読み取り、そのpidを持つプロセスが実行中であることを検証します。実行中でない場合は、新規プロセスを起動し、pid列を新しいプロセス識別子で更新します。
state=3の行が見つかると、pidを読み取ってプロセスを停止し、新規プロセスを起動して、それに合せてpidを更新します。
これが失敗する場合、別のノードにリクエストをプッシュします。

つまり、OIDCTLは、ODS.ODS_PROCESS_STATUS表の行に対して状態情報の挿入および更新を行います。OIDMONは、その情報を読み取り、指定されたタスクを実行します。

ディレクトリ・サーバーの起動、停止および再起動に関与するプロセスの概要

ディレクトリ・サーバーの起動、停止および再起動には、いくつかのプロセスが関与します。OIDMONはその1つです。UNIXでは、OIDMONをoidmonと呼びます。Microsoft Windows環境では、oidmon.exeと呼びます。

OIDMONは、インスタンスを開始するため、前出の項で説明されているinstance列の一意の番号を確認します。次に、Oracle Net Servicesのリスナー・プロセスとは異なる別のプロセス、リスナー/ディスパッチャを開始します。この新しいプロセスの識別子は、pid列に格納されます。

一方、リスナー/ディスパッチャは、構成設定エントリに定義されたいくつかのサーバー・プロセスを起動します。これらのサーバー・プロセスは、OIDMONではなくリスナー/ディスパッチャによって制御されます。いずれかのプロセスが失敗すると、リスナー/ディスパッチャによって自動的に再起動されます。

リスナー/ディスパッチャとサーバー・プロセスが組み合されて、ディレクトリ・サーバー・インスタンスとなります。UNIXでは、このディレクトリ・サーバー・インスタンスをoidldapdと呼びます。Microsoft Windowsでは、oidldapd.exeと呼びます。

つまり、少なくとも3つのプロセスがあり、1つはOIDMON用で、少なくとも2つはディレクトリ・サーバー用です。すべてのプロセスが実行中の場合は、UNIXコンピュータに次のように表示されます。

% ps -ef|grep oid
root 12387 12381 0 Mar 28 ? 0:05 oidldapd -i 1 -conf 0 key=811436710
root 12381 1 0 Mar 28 ? 0:10 oidmon start
root 13297 1 0 Mar 28 ? 0:14 oidldapd

サーバー情報を取得する別の方法は、次を実行することです。

oidctl connect=oiddb status. 

S.1.11.2 ディレクトリ・サーバーの起動、停止および再起動に関する問題

この項では、ディレクトリ・サーバーを起動、停止または再起動するときに発生する場合がある問題について説明します。

S.1.11.2.1 OIDCTLまたはOIDMONの失敗

OIDCTLまたはOIDMONが正常に動作しない場合は、いくつかの理由が考えられます。

問題

構文が正しくありません。

解決方法

『Oracle Fusion Middleware Oracle Identity Managementリファレンス』のOracle Internet Directory管理ツールに関する章を参照して、正しい構文を使用していることを確認します。OIDCTLを使用する場合の接続オプションの適切な値は、TNS別名(接続文字列)であり、ホスト名などの他の値ではありません。http://metalink.oracle.comにあるMy Oracle Support(以前のMetaLink)のNote 155790.1を参照してください。

問題

Oracle Internet Directoryで指定されたデータベースが稼働していません。

Oracle Net Servicesの構成が正しくありません。

解決方法

Oracle Internet Directoryで指定されたデータベースとOracle Net Servicesのコンポーネントが正しく構成され、稼働していることを確認します。そのためには、OIDCTLと同じORACLE_HOMEにインストールされているSQL*Plusを使用して、データベースに接続できるかどうかを確認します。ODS/ods_password@tns_aliasとしてログインします(tns_aliasは、OIDCTLのconnectオプションで使用する場合と同じです)。http://metalink.oracle.comにあるMy Oracle Support(以前のMetaLink)のNote 155790.1を参照してください。

問題

oidldapdファイルがありません。

解決方法

$ORACLE_INSTANCE/diagnostics/logs/OID/componentName/oidmon-XXXX.logを参照してください。「No such file or directory」というメッセージを探してください。この問題を修正するには、実行可能ファイルを置き換えます。

問題

oidldapd実行可能ファイルの権限が不適切です。

解決方法

Exec of OIDLDAPD failed with error 13」というメッセージを探します。UNIXの場合、$ORACLE_HOME/bin/oidldapdファイルには次の権限が必要です。

-rws--x---  1 root   dba       1691802 Jan 20 10:30 oidldapd

権限が正しくない場合は、ルートとして次のように入力します。

cd $ORACLE_HOME/bin
chown root:dba oidldapd
chmod 0710 oidldapd  
chmod u+s oidldapd

問題

権限が不十分なユーザーとして実行しています。

解決方法

これが問題になっていることを確認するには、ORACLE_INSTANCE/diagnostics/logs/ OID/componentName/oidmon-XXXXX.logを参照します。

Permission denied」または「Open Wallet failed」というメッセージを探してください。これは、rootまたはdbaグループのユーザーとして実行していない場合に発生します。この問題を修正するには、正しいユーザーとして再試行します。

問題

ポートが使用中です。

解決方法

次を参照してください。

ORACLE_INSTANCE/diagnostics/logs/ OID/componentName/oidldapd00sPID-XXXX.log

メッセージ「バインド失敗...」を確認します。これは、oidldapdでリスニングするよう構成されているポートが他のプロセスによって使用中であることを示しています。ポートを使用しているプロセスを確認するには、次のように入力します。

netstat -a | grep portNum

必要に応じて、別のポートを使用するようにもう一方のプロセスを再構成するか、configsetを追加して別のポートをリスニングするようにoidladapdを構成します。デフォルトでは、oidladapdが2つのポート(SSLポートと非SSLポート)でリスニングすることに注意してください。

問題

クラスタ構成またはOracle Application Server Cluster(Identity Management)構成において、OIDMONは、ローカル・ノードでサーバーを起動できない場合に、クラスタ内の別のノードにそのサーバーをプッシュします。

解決方法

oidmon.logを参照します。「gslsgfrPushServer: Could not start serveron NodeA, trying to start on nodeNodeB」というメッセージを探してください。この問題を修正するには、まずOIDMONがローカル・ノードでサーバーを起動できない理由を特定する必要があります。

問題

Oracle Net Servicesまたはデータベース自体で問題が発生している可能性があります。

解決方法

oidmon.logoidldapdxx.log(xxはサーバー・インスタンス番号)を確認します。

ODS.ODS_PROCESS_STATUSの行が欠落しています。

問題

クラスタ構成またはOracle Application Server Cluster(Identity Management)構成において、OIDMONが両方のノードでoidldapdを正常に起動しましたが、タイムスタンプの相違によりフェイルオーバーを開始しました。

解決方法

トレース・ファイルoidldapdxx.log(xxはインスタンス番号)およびoidldapdxxsyy.log(xxはインスタンス番号で、yyはプロセス識別子)を確認します。トレース・ファイルに役立つ情報やMy Oracle Support(以前のMetaLink)ドキュメントへのポインタがない場合は、(1)ディレクトリ・サーバーのプロセスを停止し、(2)古いトレース・ファイルを削除または名前変更して、(3)OIDMONおよびディレクトリ・サーバーを最大デバッグ・レベルの11744051で起動します。トレース・ファイルを取得するには、サーバーを単に再起動するのではなく、最初に停止してから起動する必要があります。新しいトレース・ファイルを確認し、必要に応じて、Oracle Support ServicesによってiTARをロギングし、トレース・ファイルをiTARにアップロードします。http://metalink.oracle.comにあるMy Oracle Support(以前のMetaLink)のNote 155790.1を参照してください。


関連項目:

フェイルオーバーの詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』oidctlコマンドライン・ツールのリファレンスを参照してください。


S.1.12 Oracle Internet Directoryレプリケーションに関するトラブルシューティング

この項では、ディレクトリ・レプリケーションの問題について説明します。

レプリケーションの問題を調査するときは、必ずログ・ファイルの内容を確認してください。ログ・ファイルは、ORACLE_INSTANCE/diagnostics/logs/OID/componentName/oidrepld-XXXX.log、oidldapd00-XXXX.logおよびORACLE_INSTANCE/diagnostics/logs/OID/componentName/oidldapd00sPID-XXXX.log(PIDはサーバー・プロセス識別子で、XXXXは0000からorclmaxlogfiles configuredの番号)です。

レプリケーション・サーバーは複数のデバッグ・レベルをサポートしています。レプリケーションのデバッグを有効にするには、ldapmodifyまたはFusion Middleware Controlの「共有プロパティ」、「レプリケーション」タブを使用してレプリケーション構成セットのorcldebuglevelを変更します。


注意:

デバッグをオンにすると、レプリケーションのパフォーマンスに影響が出ます。



関連項目:

詳細は、第42章「レプリケーション構成属性の管理」を参照してください。


ブートストラップの失敗

レプリケーションのブートストラップ・プロセス中に、参照整合性を無効にします。参照整合性が有効になると、ブートストラップは失敗します。

S.1.12.1 レプリケーション・サーバーが起動しない

レプリケーション・サーバーを起動できない場合は、いくつかの問題があります。

問題

oidctlの構文に誤りがあります。

解決方法

次の構文を使用してレプリケーション・サーバーを起動します。

oidctl server=oidrepld connect=connect string instance=instance_number \
       flags="-h host -p port"

問題

レプリケーション・サーバーを起動するときにコマンドラインで指定したホストおよびポートでOracle Internet Directoryが稼働していません。そのため、ターゲットOracle Internet Directoryへの匿名ユーザーによるバインドに失敗しました。

解決方法

指定したホストおよびポートでターゲットOracle Internet Directoryが稼働していることを確認します。

問題

レプリケーション・サーバーが、レプリカ・エントリのorclreplicaprimaryurlまたはorclreplicasecondaryurl属性で指定したホストおよびポートへのバインドを試みていますが、Oracle Internet Directoryは別のホストまたはポートで稼働しています。

解決方法

Oracle Internet Directoryを別のホストまたはポートで実行する場合は、次の手順で、レプリカ・エントリのorclreplicasecondaryurl属性に新しい情報を追加します。

  1. 変更ファイルmod.ldifを準備します。たとえば、ホストをmy.us.example.comに、ポートを4444に変更する場合は、次のように指定します。

    dn: orclreplicaid=replica_ID, cn=replication configuration
    changetype: modify 
    add: orclreplicasecondaryurl 
    orclreplicasecondaryurl: ldap://my.us.example.com:4444/ 
    
  2. 次のコマンドを実行します。

    ldapmodify -h host -p port -f mod.ldif
    

問題

レプリケーション・ウォレットORACLE_INSTANCE/OID/admin/oidpwdrORACLE_SIDReplBind資格証明が破損しているか無効です。つまり、ウォレットに格納されているパスワードと、ディレクトリに格納されているパスワードが同じではないか、ウォレットが存在しません。そのため、レプリケーションのバインドに失敗し、レプリケーション・サーバーがエラーで終了しました。

oidrepldXX.logファイルに、次のようなメッセージが記録される場合があります。

2005/07/21:11:13:28 * gslrcfdReadReplDnPswd:Error reading repl passwd 
2005/07/21:11:13:28 * gslrcfcReadReplConfig:Error found. 
2005/07/21:11:13:28 * Failed to read replication configuration information. 

解決方法

remtoolを使用して、レプリケーション・ウォレット内のレプリケーション・バインドの資格証明を修正するか、Oracle Internet Directoryとレプリケーション・ウォレットを同期させます。

  • remtool -pchgpwdは、レプリカのレプリケーション識別名のパスワードを変更します。ディレクトリに格納されている現在のレプリケーション識別名パスワードを知っており、ディレクトリに格納されているパスワードとウォレット内の証明を両方変更する場合は、このオプションを使用します。

  • remtool -presetpwdは、レプリカのレプリケーション識別名のパスワードをリセットします。ディレクトリに格納されている現在のレプリケーション識別名パスワードを知っており、ディレクトリに格納されているパスワードとウォレット内の証明を両方変更する場合は、このオプションを使用します。

  • remtool -pchgwalpwdは、レプリカのレプリケーション識別名のパスワードをウォレット内でのみ変更します。ディレクトリに格納されているレプリケーション識別名のパスワードは知っているが、ウォレットのパスワードが正しいかどうか不明な場合、またはウォレット・ファイルを作成する必要がある場合に、このオプションを使用してください。

これらすべてのオプションは、ウォレットがまだ存在しない場合に新しいウォレットを作成します。


関連項目:

  • remtoolの使用の詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』remtoolコマンドライン・ツールのリファレンスを参照してください。

  • oidpasswdの使用の詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』oidpasswdコマンドライン・ツールのリファレンスを参照してください。


問題

レプリケーション・サーバーは、一方向認証または双方向認証用に構成されているSSLポートをバインドしようとしています。

解決方法

非SSLポートまたは認証なしで構成されているSSLポートを使用するようレプリケーション・サーバーを構成します。別のOracle Internet Directoryサーバー・インスタンスをレプリケーション用に使用できます。

S.1.12.2 リポジトリ作成アシスタントのエラー

問題

Oracle Application ServerツールRepCAを使用して、Oracle Internet Directoryスキーマを既存のOracle 10.1.0.3 Databaseにロードする場合、ORACLE_INSTANCE/diagnostics/logs/OID/tools/repca*logファイルに次のようなエラー・メッセージが出力されることがあります。

SP2-0332: Cannot create spool file.

解決方法

このエラー・メッセージは無視してかまいません。

S.1.12.3 レプリケーションのブートストラップに関するエラー

レプリケーションのブートストラップで、エラーが発生する場合があります。

問題

一部のネーミング・コンテキストのブートストラップに失敗しました。

解決方法

ブートストラップに失敗したネーミング・コンテキストを特定し、oidcmprecツールを使用して調整します。その後、コンシューマのレプリカ状態をオンライン・モードに設定して、レプリケーションを再開します。

問題

様々な原因。

解決方法

ブートストラップに失敗した原因を特定し、修正します。その後、コンシューマのレプリカ状態をブートストラップ・モードに設定して、ブートストラップを再開します。

解決方法

エラーの正確な原因を特定するには、ログ・ファイルoidldapdxx.logを調べます。次の例に示すようなエラー・メッセージを探します。

2004/09/14:12:57:23 * Starting OIDREPLD against dlsun1418:4444...
2004/09/14:12:57:25 * Starting scheduler...
2004/09/14:12:57:26 * Start to BootStrap from supplier=dlsun1418_replica to consumer=dlsun1418_replica2
2004/09/14:12:57:27 * gslrbssSyncDIT:Replicating namingcontext=cn=oraclecontext ......
2004/09/14:12:58:21 * gslrbssSyncDIT:Sync done successfully for namingctx: cn=oraclecontext, 222 entries matched
2004/09/14:12:58:21 * gslrbssSyncDIT:Replicating namingcontext=cn=joe smith ......
2004/09/14:12:58:23 * BootStrap failure when adding DN=cn=Joe Smith,
server=dlsun1418_replica2,err=Constraint violation.
2004/09/14:12:58:23 * gslrbssSyncDIT:Sync failed for namingctx: cn=joe smith, only 1 entries retrieved
2004/09/14:12:58:23 * gslrbssSyncDIT:Replicating namingcontext=cn=oracleschemaversion ......
2004/09/14:12:58:25 * gslrbssSyncDIT:Sync done successfully for namingctx: cn=oracleschemaversion, 10 entries matched
2004/09/14:12:58:51 * gslrbsbBootStrap: Failure occurred when bootstrapping 1 out of 3 namingcontext(s) from the supplier

ブートストラップに失敗した原因を特定し、修正します。問題の原因となったネーミング・コンテキストを特定し、oidcmprecを使用してネーミング・コンテキストの比較および調整を行うことができます。問題が解決したら、Oracle Internet Directoryレプリケーション・サーバーを起動して、再度ブートストラップを開始します。

問題

ブートストラップ中にOracle Internet Directoryサーバーが停止しました。

解決方法

サプライヤ側のOracle Internet Directoryサーバーとコンシューマ側のOracle Internet Directoryサーバーが、レプリケーションのブートストラップ中に稼働していることを確認します。

問題

制約違反のため、ブートストラップ対象のエントリの一部をコンシューマ側で適用できません。

解決方法

レプリケーションのブートストラップを開始する前に、コンシューマ側のOracle Internet Directoryスキーマがサプライヤ側のOracle Internet Directoryスキーマと同期していることを確認します。LDAPレプリカを追加する場合、remtoolによりコンシューマ・レプリカのOracle Internet Directoryスキーマはサプライヤ・レプリカのOracle Internet Directoryスキーマと必ず同期します。

問題

ブートストラップ中にレプリケーションの不適切なフィルタ処理が行われました。ブートストラップ中に1つ以上の属性をレプリケーションから除外できます。ただし、エントリの必須属性を除外する構成を行った場合、objectclass違反のため、そのエントリをコンシューマ側で適用できません。

解決方法

第40章「レプリケーションの設定」のレプリケーション・ネーミング・コンテキスト構成規則に従って、レプリケーションのフィルタ処理を正しく構成します。

LDAPレプリケーションをデバッグする場合、LDAPレプリカの状態をよく理解しておく必要があります。LDAPベースのレプリケーションが構成されている場合、レプリケーション・サーバーは、起動後、ローカル・レプリカからレプリカの状態を読み取ります。レプリケーション・サーバーの動作はローカル・レプリカの状態によって異なります。LDAPレプリケーション・エラーはoidldapdxx.logに記録されます。

問題

エントリ数が5000を超えるネーミング・コンテキストのブートストラップに失敗した後、そのレプリケーション・サーバーを再起動すると、次のようなエラー・メッセージがログ・ファイルoidrepld00.logに出力される場合があります。

2005/04/05:13:21:55 * gslrbssSyncDIT:Replicating namingcontext=dc=com ...... 
2005/04/05:15:36:09 * gslrbssSyncDIT:Subtree delete on dc=com failed. 
Error=DSA is unwilling to perform 
2005/04/05:15:36:09 * gslrbssSyncDIT:Sync failed for namingctx: dc=com, only 
0 entries retrieved 

レプリケーション・サーバーは、ブートストラップ操作時に2つの手順を実行します。まず、コンシューマ側で、ブートストラップが必要なネーミング・コンテキストを削除します。次に、それらのネーミング・コンテキストに属するエントリをサプライヤからコンシューマへコピーします。数千のエントリを含むネーミング・コンテキストをレプリケーション・サーバーが削除すると、非常に大規模なトランザクションが発生します。この大規模なトランザクションに対応するには、UNDO表領域として十分な領域を確保する必要があります。データベースのUNDO表領域の領域が不十分な場合は、ORA-30036エラーが発生します。

解決方法

UNDO表領域の領域を追加するようデータベース管理者に依頼します。または、bulkdeleteツールを使用して必要なネーミング・コンテキストを削除してから、レプリケーション・サーバーを起動します。

S.1.12.4 変更がレプリケートされない

変更内容が別のノードにレプリケートされません。

問題

レプリケーション・サーバーの表領域が不足しています。

解決方法

サーバー・ログで、次のメッセージを探してください。

OCI Error ORA-1653 : ORA-01653: unable to extend table ODS.ASR_CHG_LOG by 8192 in tablespace OLTS_DEFAULT

表領域を拡張し、表領域が増大し続けている原因を調べます。

問題

ターゲットのOracle Internet Directoryサーバーが停止しています。

解決方法

ターゲットのOracle Internet Directoryサーバーを再起動します。

問題

様々な原因

解決方法

レプリケーション・サーバーが、マルチマスター・レプリケーションのすべてのノード、および単一マスター・レプリケーションまたはファンアウト・レプリケーションのコンシューマ・ノードで起動していることを確認します。

Oracle Databaseアドバンスト・レプリケーション・ベースのマルチマスター・レプリケーションでは、remtoolを使用して問題を診断し、修正します。

  • remtool -asrverifyは、DRGの設定が正しいかどうかを検証し、問題を報告します。

  • remtool -asrrectifyは、DRGの設定が正しいかどうかを検証し、問題を報告して、問題の修正を試みます。

レプリケーション・ログおよびLDAPログにエラー・メッセージが記録されていないかどうかチェックし、調査が終わったら、エラーの原因を修正します。


関連項目:

remtoolの使用の詳細は、『Oracle Fusion Middleware Oracle Identity Managementリファレンス』remtoolコマンドライン・ツールのリファレンスを参照してください。


S.1.12.5 レプリケーション操作の停止

問題

レプリカ間でデータがレプリケートされません。OID管理者操作キューのエントリがいずれかのノードに適用された後、実行中のレプリケーション設定作業が停止してしまうことがあります。新規レプリカの追加や削除を行うと問題や障害が発生することもあります。

問題

様々な原因

解決方法

http://metalink.oracle.comにあるMy Oracle Support(以前のMetaLink)で次のNoteを参照してください。

Note 171693.1「Resolving Conflicts」

Note 122039.1「Troubleshooting Basics for Advanced Replication」

Note 213910.1「Debugging OID Replication when ASR_CHG_LOG Never Gets Populated」

検索ボックスにreplicationなどの語を入力して、Notesを検索できます。

S.1.13 変更ログのガベージ・コレクションに関するトラブルシューティング

レプリケーションとOracle Directory Integration Platformはいずれも変更ログを使用して、サプライヤ・ディレクトリの情報をコンシューマ・ディレクトリに伝達します。変更ログはすべてods_chg_logという表に格納されます。また、レプリケーション変更ログはasr_chg_logに格納されます。

この項では、変更ログのガベージ・コレクションの際に発生する可能性のある問題について説明します。

問題

ガベージ・コレクションが機能しておらず、Oracle Internet DirectoryがOracle Database 11.2.0.1を使用しています。

解決方法

11.2.0.1.3 PSUをデータベースに適用します。

問題

レプリケーションの問題のため、変更ログはパージされません。たとえば、レプリケーション・サーバーが数日間停止した場合、レプリケーションのリカバリで必要になるので、レプリケーション変更ログはパージされません。

解決方法

レプリケーションの問題を解決します。「Oracle Internet Directoryレプリケーションに関するトラブルシューティング」を参照してください。

問題

属性orclpurgetargetageの設定が高過ぎ、サブスクライバ・プロファイルのorclLastAppliedChangeNumberを更新していない、有効化されているが、アクティブではない変更ログ・サブスクライバが1つ以上あります。変更番号ベースのパージはまだコンシュームされていない変更ログをパージせず、時間ベースのパージは変更ログが十分に古くないためパージしません。

解決方法

属性orclpurgetargetageの値を小さくして、変更ログがより早くパージされるようにしてください。

解決方法

非アクティブな変更ログ・サブスクライバを無効にして、変更ログ数ベースで変更ログがパージされるようにします。有効化されているが、アクティブではないサブスクライバ・プロファイルを探すには、次のように入力して、すべてのサブスクライバ・プロファイルのorclLastAppliedChangeNumberを調べます。

ldapsearch -v -p port -h host -D cn=orcladmin -q \
           -b "cn=changelog subscriber,cn=oracle internet directory" \
           -s sub "objectclass=orclchangesubscriber" \
           orcllastappliedchangenumber orclsubscriberdisable
 

orclSubscriberDisabledがゼロで、orclLastAppliedChangeNumberの値がまったく変化していないエントリを探してください。そのようなエントリが存在し、変更ログのガベージ・コレクタのorclpurgetargetageがゼロ以上の場合は、orclpurgetargetageの値を削除します。orclpurgetargetageが定義されていない場合、またはゼロより小さい場合、別のサブスクライバがorclLastAppliedChangeNumberを更新していなくても、ガベージ・コレクタはレプリケーション・サーバーによって適用された変更をパージします。

S.1.14 動的パスワード・ベリファイアに関するトラブルシューティング

表S-4に、動的パスワード・ベリファイアのエラー・メッセージとその説明を示します。

表S-4 動的パスワード・ベリファイアのエラー・メッセージ

エラー・コード 説明

9022

ユーザー・エントリに可逆暗号化パスワードがありません。

9023

LDAPリクエスト制御で指定した暗号タイプはサポートされていません。

9024

LDAPリクエスト制御にusernameパラメータがありません。


ディレクトリがベリファイアを比較でき、比較の結果がFALSEの場合、ディレクトリは標準エラーLDAP_COMPARE_FALSEをクライアントに送信します。同様に、認証中のユーザーがディレクトリ・エントリを持たない場合、ディレクトリは標準エラーLDAP_NO_SUCH_OBJECTを送信します。


関連項目:

『Oracle Fusion Middleware Oracle Identity Managementリファレンス』の「パスワード・ベリファイアのスキーマ要素」の章


S.1.15 Oracle Internet Directoryパスワード・ウォレットに関するトラブルシューティング

Oracle Internet Directoryサーバーには、oidpwdlldap1oidpwdrSIDの2つのパスワード・ウォレットがあります。

oidpwdlldap1ファイルには、ODSユーザーの識別名およびパスワードが暗号化形式で格納されます。Oracle Internet Directoryサーバーは、起動時に、資格証明を使用してバックエンド・データベースに接続します。

S.1.15.1 Oracle Internet Directoryサーバーが起動しない

oidctlまたはopmnがOracle Internet Directoryサーバー・インスタンスの起動に失敗します。

問題

oidpwdlldap1ウォレットに格納されているパスワードが、バックエンド・データベースのODSパスワードと同期していません。

解決方法

sqlplusコマンドを使用して、データベースへの接続を再試行します。

sqlplus ods /ods_password@connect_string

接続に成功した場合は、oidpasswdツールを使用して正しいパスワードを持つ新規ウォレットを作成することで、ウォレット内のパスワードをODSパスワードと同期させます。たとえば、ORACLE_INSTANCEが設定されているのを確認してから、次を入力します。

>> oidpasswd connect=connect_string create_wallet=true

接続に失敗した場合は、データベース管理者としてバックエンド・データベースにログインし、sqlコマンドを使用してODSパスワードを変更する必要があります。

>> alter user ods identified by some_new_password

その後、oidpwdlldap1を新たに作成して、新規パスワードを格納します。

解決方法

Oracle Internet Directoryサーバーの起動を再試行します。

oidpwdrSIDファイルには、レプリカ識別名の識別名およびパスワードが暗号化形式で格納されます。Oracle Internet Directoryレプリケーション・サーバーは、起動時に、資格証明を使用してOracle Internet Directoryサーバーに接続します。

レプリケーション・パスワード・ウォレットoidpwdrSIDの例を次に示します。

/------BEGIN REPL CREDENTIAL:cn=replication dn,orclreplicaid=qdinh-sun_
adeldap,cn=replication configuration-----
ezNkZXMtY2JjLXBrY3M1cGFkfQUnaz0TsfzcP0nM1HcHAXchf5mJw+sb4y0bLvvw3RvSg7H
S7/WsKJB02fdSGRlmfWAV+6llkRQ26g==
-----END REPL CREDENTIAL:cn=replication dn,orclreplicaid=qdinh-sun_
adeldap,cn=replication configuration-----/

S.1.15.2 パスワードが同期されない

oidctlまたはopmnがOracle Internet Directoryサーバー・インスタンスの起動に失敗し、バインドできないというメッセージがレプリケーション・サーバー・ログ・ファイルoidrepld00.logに記録されます。

問題

oidpwdrSIDに格納されたレプリカ識別名のパスワードが、Oracle Internet Directoryサーバーのレプリカ識別名のパスワードと同期していません。

解決方法

ldapbindコマンドを使用して、Oracle Internet Directoryサーバー・インスタンスへの接続を試みます。oidpwdrSIDに格納されているレプリカ識別名とレプリカ識別名のパスワードを指定します。次に例を示します。

>> ldapbind -h host -p port -D "cn=replication dn,orclreplicaid=qdinh-sun_adeldap, cn=replication configuration" -q

接続に成功した場合は、オプション-pchgwalpwdを指定してremtoolを使用し、oidpwdrSIDウォレットのパスワードを再設定でき、これにより、このウォレットのレプリカのみのレプリケーション識別名のパスワードが変更されます。レプリケーション識別名パスワードを覚えていない場合は、オプション-prestpwdを指定してremtoolを使用し、このパスワードを再設定でき、これにより、レプリカのレプリケーション識別名のパスワードが再設定されます。

レプリケーション・パスワード・ウォレットをリセットした後、opmnctlを使用して、レプリケーション・サーバー・インスタンスをもう一度再起動します。

S.1.16 bulkloadに関するトラブルシューティング

次の手順に進む前に、bulkloadがスローしたすべてのエラーを調べ、修正することを強くお薦めします。bulkloadエラーを無視すると、後から深刻な問題が発生する可能性があります。

エラーの原因に関する情報を得るには、デバッグを有効にして(debug=t)コマンドを実行します。デバッグ情報は、ORACLE_INSTANCE/diagnostics/logs/OID/tools/bulkload.logおよびデータベースのods.ds_ldap_log表にあります。

大部分のbulkloadエラーは、データ・ロード中または索引作成中に発生します。

問題

bulkloadコマンドライン・ツールが、データ・ロード中に失敗しました。

解決方法

次のいずれかの方法を使用して、ディレクトリをデータ・ロード前の状態にリストアします。

  • bulkload recoverオプションの使用

  • bulkloadを起動する前に取ったバックアップからのデータベースのリストア。

問題

bulkloadコマンドライン・ツールが、索引作成中に失敗しました。

解決方法

bulkload.logを調べます。索引作成失敗の原因となった問題を特定し、修正します。bulkloadindexオプションを指定して、再び実行します。

索引エラーの修正に失敗すると、Oracle Internet Directoryの表に重複エントリや重複行が生じる可能性があります。

問題

bulkloadコマンドライン・ツールが、データベースへの接続切断のために失敗しました。これは、たとえばホストのクラッシュや、Real Application Clustersでのフェイルオーバーが原因で、発生する可能性があります。

解決方法

次の手順に従ってください。

  1. データベースが正常に再起動したか確認します。

  2. bulkloadの起動にcheck="TRUE"オプションまたはgenerate="TRUE"オプションのみを使用し、load="TRUE"オプションを使用しなかった場合は、手順3に進んでください。

    失敗したオプションがbulkload load="TRUE"オプションだった場合、データベースを失敗前の状態にリストアする必要があります。どのように行うかは、bulkload load="TRUE"コマンドを発行する前に、データベースのバックアップを取ったかどうかによって決まります。

    • バックアップがある場合は、それを使用して、データベースをbulkloadコマンドを発行する前の元の状態にリストアします。

    • バックアップがない場合は、bulkload recoverコマンドを使用して、データベースをbulkload load="TRUE"コマンド発行前の状態に戻します。

  3. 失敗したbulkloadコマンドを再発行します。

S.1.17 bulkdelete、bulkmodifyおよびldifwriteに関するトラブルシューティング

次の手順に進む前に、バルク・ツールがスローしたすべてのエラーを調べ、修正することをお薦めします。エラーの理由の詳細を取得するには、デバッグを有効にしてコマンドを実行します(debug=t)。デバッグ情報は、ORACLE_INSTANCE/diagnostics/logs/OID/tools/の対応するログ・ファイルbulkdelete.logbulkmodify.logまたはldifwrite.logにあります。データベースでは、デバッグ情報はods.ds_ldap_log表にあります。

問題

bulkdeleteまたはbulkmodifyコマンドライン・ツールが、データベースへの接続切断のために失敗しました。これは、たとえばホストのクラッシュや、Real Application Clustersでのフェイルオーバーが原因で、発生する可能性があります。

解決方法

データベースが正常に再起動したか確認します。次に、失敗したbulkdeleteまたはbulkmodifyコマンドを再試行します。

S.1.18 catalogに関するトラブルシューティング

次の手順に進む前に、バルク・ツールがスローしたすべてのエラーを調べ、修正することをお薦めします。エラーの理由の詳細を取得するには、デバッグを有効にしてコマンドを実行します(debug=t)。デバッグ情報は、ORACLE_INSTANCE/diagnostics/logs/OID/tools/catalog.logおよびデータベースのods.ds_ldap_log表にあります。

問題

catalogコマンドライン・ツールが、データベースへの接続切断のために失敗しました。これは、たとえばホストのクラッシュや、Real Application Clustersでのフェイルオーバーが原因で、発生する可能性があります。

解決方法

データベースが正常に再起動したか確認します。失敗したcatalogコマンドを再試行します。最初の起動でadd="TRUE"オプションを使用した場合は、最初のコマンドが部分的に完了しているため、再試行が失敗する可能性があります。再試行が失敗した場合、catalog delete="TRUE"を使用して属性索引を削除し、コマンドをもう一度再試行します。

問題

ファイル内に1000を超える属性があるため、catalogコマンドがエラーをスローします。

解決方法

1000を超える属性の索引を作成する必要がある場合は、複数のファイルを使用します。

S.1.19 remtoolに関するトラブルシューティング

問題

remtool問合せ

remtool -pdispqstat -v -bind host:port 

などがハングします。停止中に、その他のツールを使用してサーバーにバインドしようとしても、失敗する可能性があります。

解決方法

パージ待ち状態の変更ログのバックログが大きい場合、remtoolの検索問合せの実行に長時間かかります。変更ログのパージが環境に応じて適切に構成されていることを確認してください。「変更ログのパージ」を参照してください。

また、ワーカー・スレッド数を増やし、remtoolによる問合せの実行時にその他のツールでのバインドを可能にすることもできます。『Oracle Fusion Middlewareパフォーマンスおよびチューニング・ガイド』インスタンス固有の構成エントリの属性に関する説明および「Oracle Internet Directory」の章を参照してください。

S.1.20 サーバー・チェーンに関するトラブルシューティング

問題

ログに、エラー・メッセージServer Chaining errorjavax.naming.AuthenticationExceptionが含まれています。

解決方法

ODSMで、拡張タブに移動し、「サーバー・チェーン」を展開します。有効になっている各エントリで、「ログイン資格証明の検証」「ユーザー・コンテナの検証」および「グループ・コンテナの検証」をクリックします。

検証に失敗した場合、入力した値に誤りがないか確認します。問題が解消されない場合、外部ディレクトリ管理者に連絡し、入力した値が正しいかどうかを確認します。

S.1.21 バージョン情報の表示

Oracle Internet Directory用のOracle Directory Services Managerホームページで、Oracle Directory Services Manager、Oracle Internet Directoryおよび対応するOracle Databaseのバージョン情報を表示できます。Oracle Directory Services Managerの使用の詳細は、「Oracle Directory Services Managerの使用」を参照してください。

S.1.22 Fusion Middleware ControlとWLSTに関するトラブルシューティング

問題

システムに11g リリース1(11.1.1.4.0)のパッチを適用した後、Oracle Enterprise Manager Fusion Middleware ControlおよびWLSTが機能しません。

解決方法

この問題は、SSLサーバー認証を有効にし、パッチ適用前に暗号スイートを構成した場合に発生します。パッチ適用後にこの問題を修正するには、ldapmodifyを使用して、インスタンス固有の構成エントリからorclsslciphersuite属性を削除します。インスタンス固有のエントリ内のorclsslciphersuite属性を削除するためのLDIFファイルは、次のとおりです。

dn: cn=componentname,cn=osdldapd,cn=subconfigsubentry
changetype: modify
delete: orclsslciphersuite

コマンドは次のとおりです。

ldapmodify -D cn=orcladmin -q -p portNum -h hostname -f ldifFile 

「opmnctlを使用したOracle Internet Directoryサーバーの再起動」の説明に従って、Oracle Internet Directoryを再起動します。

問題

Oracle Internet Directoryは稼働していますが、Oracle Enterprise Manager Fusion Middleware ControlまたはWLSTを使用してOracle Internet Directoryのパラメータを変更できません。バックエンドOIDに接続できないというエラー・メッセージが表示される場合があります。

解決方法

これは、Oracle Internet Directoryのポート番号が変更されて、サーバーが再起動されていないか、Oracle Internet Directoryのコンポーネント登録が更新されていない場合に起こります。サーバーを再起動し、「opmnctlを使用したOracleインスタンスのコンポーネント登録の更新」に記載のとおりopmnctl updatecomponentregistrationを実行します。

解決方法

これは、レプリケーション・ウィザードの使用時にサーバー認証または相互認証用に構成されたSSLポートを指定した場合に発生します。レプリケーション・ウィザードは、認証なし用に構成されているSSLポートにのみ接続できます。ログインを要求された場合またはノードを指定する場合は、常に、非SSLポートまたは認証なし用に構成されたSSLポートを指定します。

解決方法

これは、Oracle Internet DirectoryのSSLポートが相互認証用に構成されている場合に発生します。Oracle Enterprise Manager Fusion Middleware ControlおよびWLSTはSSLポートを介してOracle Internet Directoryを管理し、このポートは認証なしまたはサーバー認証用に構成されている必要があります。


関連項目:

「SSL認証モード」


S.1.23 Oracle Directory Services Managerに関するトラブルシューティング

この項では、Oracle Directory Services Managerに関する問題を示します。

S.1.23.1 Fusion Middleware ControlからODSMを起動できない

問題

Oracle Internet Directoryターゲットの「Oracle Internet Directory」メニューから「Directory Services Manager」を選択し、「データ・ブラウザ」「スキーマ」「セキュリティ」または「拡張」を選択して、Oracle Enterprise Manager Fusion Middleware ControlからのOracle Directory Services Managerの起動を試みます。

ODSMは開きません。エラー・メッセージが表示される場合があります。

解決方法

これは、インストールに問題がある可能性があります。『Oracle Fusion Middleware Oracle Identity Managementインストレーション・ガイド』を参照してください。

S.1.23.2 複数のNICおよびDHCPが有効な環境でFusion Middleware ControlからODSMを起動できない

問題

Oracle Directory Services ManagerがデプロイされているWebLogic管理対象サーバーで、複数のネットワーク・インタフェース・カード(NIC)があるか、またはDHCPが有効です。Oracle Enterprise Manager Fusion Middleware ControlからのOracle Directory Services Managerの起動が失敗し、404 errorsが返されます。

解決方法

Oracle Directory Services ManagerのURL内のIPアドレスまたはホスト名にアクセスできるように、WebLogic Server管理コンソールを使用してWebLogic管理対象サーバーのリスニング・アドレスを変更します。

次の手順を実行してください。

  1. ブラウザを使用して、WebLogic Server管理コンソールにアクセスします。

  2. WebLogic Server管理コンソールの左ペインで、「ロックして編集」をクリックしてサーバー構成を編集します。

  3. WebLogic Server管理コンソールの左ペインで「環境」を開き、「サーバー」を選択します。

  4. 「サーバーのサマリー」ページで、Oracle Directory Services ManagerがデプロイされているWebLogic管理対象サーバーのリンクをクリックします。

  5. WebLogic管理対象サーバーの「設定」ページで、「リスニング・アドレス」を、Oracle Directory Services Managerがデプロイされているサーバーのホスト名に更新します。

  6. 構成を保存するには、「保存」をクリックします。

  7. 変更のアクティブ化」をクリックして、サーバー構成を更新します。

S.1.23.3 様々なフェイルオーバーの問題

問題

Oracle HTTP Serverを使用してOracle Directory Services Managerフェイルオーバーを行うと、フェイルオーバーが透過的ではありません。次の手順を実行すると、この動作を確認できます。

  1. Oracle Directory Services Managerは、Oracle HTTP Serverを使用する高可用性アクティブ/アクティブ構成でデプロイされています。

  2. Oracle HTTP Serverの名前とポート番号を使用してOracle Directory Services Managerページを表示します。

  3. Oracle Internet Directoryサーバーへ接続します。

  4. 現在のOracle Directory Services Manager Oracle HTTP Serverホストとポートを介して、Oracle Internet Directoryサーバーを使用します。

  5. WebLogic Server管理コンソールを使用して、一度に1つずつ管理対象サーバーを停止します。

  6. Oracle Directory Services Managerページとポート、およびOracle Internet Directoryとの間でこれより前に確立した接続に戻ります。これを行うと、Oracle Directory Services Managerページとの接続を新たに確立することを推奨するメッセージが表示されます。

解決方法

この問題が起きたら、次の手順を実行します。

  1. Webブラウザで現在のOracle Directory Services Managerページを終了します。

  2. 新規Webブラウザ・ページを起動し、同じOracle Directory Services Manager Oracle HTTP Server名とポートを指定します。

  3. これより前に使用していたOracle Internet Directoryとの接続を新たに確立します。


関連項目:


問題

ODSMが一時的にOracle Internet Directoryとの接続を失い、LDAPサーバーが停止しています。というメッセージが表示されます。

解決方法

ODSMがロード・バランサを介してOracle Internet Directoryに接続している高可用性環境では、あるOracle Internet Directoryのインスタンスから別のインスタンスへのフェイルオーバー時、ODSMはサーバーが停止していると報告します。他の構成では、このメッセージはOracle Internet Directoryが停止され、再起動されたことを示す場合があります。いずれの場合も、接続の再確立にかかる時間はわずかで、再度ログインすることなく続行できます。

問題

ODSMでは、Oracle RACデータベースを使用しているOracle Internet Directoryインスタンスとの接続が一時的に切断されます。ODSMに、メッセージ「Oracleデータベースへのアクセスに失敗しました(Oracleエラー・コード=errcode)」が表示されることがあります(ここで、errcodeは、311331141092281041または1012のいずれか1つの値です)。

解決方法

このエラーは、Oracle Internet Directoryインスタンスが使用しているOracle Databaseのフェイルオーバー時に起こります。いずれの場合も、接続の再確立にかかる時間はわずかで、再度ログインすることなく続行できます。

S.1.23.4 ODSMからエラー・メッセージが表示される

問題

ODSMが、エラー: Posn: -1、サイズ: 0というエラー・メッセージを表示します。

解決方法

このエラーは無視しても問題ありません。これは、通常、Oracle Internet DirectoryがODSM操作のエラーを検出したことを示しています。ODSMがOracle Internet Directoryに接続するために使用するJNDIは、実際のエラー・コードではなく、このエラー・コードを戻すことがあります。Oracle Internet Directoryサーバーのログ・ファイルには、意味のわかりやすいエラー・メッセージがより多く表示されます。

S.1.23.5 カーソルがフォーカスを失う

問題

Internet Explorer 7でキーボードのみを使用してODSMにアクセシビリティ・モードでアクセスすると、カーソルがフォーカスを失います。この動作は、次の環境で起こります。

  • ディレクトリにSSL有効モードでアクセスし、サーバー証明書が表示されます。

  • 無効なパスワードを入力し、エラー・ダイアログが表示されます。

解決方法

[Tab]キーを9回押し、[Enter]キーを押します。

S.1.24 Oracle Internet Directoryがポリシー・ストアである場合のパフォーマンス・チューニング

ポリシー・ストアとしてOracle Internet Directoryを使用している場合、Fusion Applications専用環境から共有環境への移行中に、セキュリティ・ストアの移行によりOracle Internet Directoryに対するOPSS問合せが低速になります。

問合せのパフォーマンスを向上させるには、Oracle Internet Directoryのポリシー・ストアに次のチューニング値を設定します。

  • Oracle Databaseチューニング・パラメータ

    • SGA_MAX_SIZE: 4G以上

    • Oracle Databaseサーバー・プロセス: 500以上

  • Oracle Internet Directory属性

    • orclecacheenabled: 2(エントリ・キャッシュおよび結果セット・キャッシュの両方が有効)

    • orclrscacheattr - 次のように複数値属性を設定します。

      orclrscacheattr: orcljaznprincipal
      orclrscacheattr: orcljaznpermissiontarget
      orclrscacheattr: orcljpsresourcename
      orclrscacheattr: uniquemember
      orclrscacheattr: orcljpsassignee
      
    • orclecachemaxsize: 16G以上

    • orclinmemfiltprocess - 次のように複数値属性を設定します。

      orclinmemfiltprocess: (orcljpsresourcetypename=taskflowresourcetype)
      orclinmemfiltprocess: (orcljpsresourcetypename=regionresourcetype
      

S.2 さらに支援が必要な場合

http://support.oracle.comのMy Oracle Support(以前のMetaLink)には様々な解決策が掲載されています。問題の解決策が見つからない場合は、サービス・リクエストを登録してください。


関連項目:

Oracle Technology NetworkにあるOracle Fusion Middlewareリリース・ノートfor Microsoft Windows(32-Bit): http://www.oracle.com/technology/documentation/index.html