Oracle Call Interface (OCI)を使用したロード・ルールで接続が失敗することがある

Windowsでは、Oracle Call Interface (OCI)接続文字列を使用した、データのプレビュー、またはルール・ファイルによるディメンション構築やデータ・ロードの実行が失敗し、次のエラー・メッセージが表示される場合があります:

OCIに接続しようとして失敗しました。[ORA-12638: 資格証明の取得に失敗しました]。

この問題の原因は、バージョン19cのOracle Databaseサーバーおよび19cのクライアント(この場合は、クライアントがEssbaseのインストール先)で、設定がないか、sqlnet.ora内に次の設定があることです: SQLNET.AUTHENTICATION_SERVICES=(NTS)

解決策は、Essbaseのインストール先のコンピュータにあるsqlnet.ora内でSQLNET.AUTHENTICATION_SERVICES=(NONE)を設定することです。

  1. <Oracle Home>/network/adminで、sqlnet.oraを見つけます
  2. そのファイルを開き、SQLNET.AUTHENTICATION_SERVICES=(NONE)を追加します
  3. Essbaseアプリケーションを再起動します。

ノート:

sqlnet.oraファイルが存在しない場合は、sqlnet.oraという名前のテキスト・ファイルを追加することでそれを作成します。

パラメータは、sqlnet.oraではなくtnsnames.oraにあります。Oracle Database 19cのSQLNET.AUTHENTICATION_SERVICESドキュメントの使用上のノートを参照してください。