ビジネス オブジェクト プロバイダーを使用している SSRS レポートがあります。dll には Oracle サーバーとの接続があります。レポートを実行するたびに、次のエラー メッセージが表示され続けます。
「Oracle.DataAccess.Client.OracleException ORA-12514: TNS: リスナーは現在、接続記述子で要求されたサービスを認識していません」
誰でも理由を知っていますか?
ビジネス オブジェクト プロバイダーを使用している SSRS レポートがあります。dll には Oracle サーバーとの接続があります。レポートを実行するたびに、次のエラー メッセージが表示され続けます。
「Oracle.DataAccess.Client.OracleException ORA-12514: TNS: リスナーは現在、接続記述子で要求されたサービスを認識していません」
誰でも理由を知っていますか?
その方法を選択した場合、一般的な tnsnames.ora エントリは次のようになります。
DBAlias =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521))
(CONNECT_DATA = (SERVICE_NAME = YourDBServiceName))
)
通常、tnsnames.ora ファイルは ORACLE_HOME/network/admin ディレクトリにあります。
技術的に言えば、「リスナーを作成する」のではなく、どこかのリスナーを参照する Oracle クライアント ネットワーク接続文字列のエイリアスを定義しています。
または、tnsnames.ora エントリをいじりたくない/できない場合は、EZConnect 文字列を指定できます。
"Data Source=//yourserver:1521/yourDB;User ID=theUser;Password=thePW"
次の効果を得るには、sqlnet.ora ファイルにエントリが必要です。
NAMES.DIRECTORY_PATH = (TNSNAMES, EZCONNECT)