2012-10-23 3 views
3

내 WCF 서비스는을 사용하여 oracle db에 연결합니다. 그것은 년 동안 성공적으로 실행 정도 아래를 ConnectionString을 사용하고있다 : 나는 최근에 새로운 PC를 가지고 다시 설치 Oracle 클라이언트에 있었다ORA-12541 TNS : Oracle.DataAccess 연결에 청취자가 없습니다.

OracleConnection conn = new OracleConnection(String.Format("USER ID=XXX;PASSWORD=XXX;DATA SOURCE={0}", db)); 

. 내 기존 서비스에 새로운 operationContract를 추가하려고 시도했으며 새로 추가 된 ODAC를 다시 참조해야했습니다. 갑자기 더 이상 연결되지 않습니다. connection.open();

내 TNSnames.ora 파일이 이전과 동일한 위치에 있습니다. 나는 심지어 그것을 웃어 넘기기 위해 프로젝트의 bin 디렉토리에 복사하려고 시도했다.

TOAD 작품. OraHome에서 데이터베이스를 성공적으로 tnsping 할 수 있습니다. System.Data.OracleClient을 사용하여 데이터베이스에 액세스 할 수 있지만 더 이상 사용되지 않는 DLL을 사용하기 위해 모든 것을 다시 쓰고 싶지는 않습니다.

tnsnames가 있으면 경로가 내 env 변수에서 식별되고 리스너가 실행되고 있는지 확인해야합니까? 나는 오라클을위한 HKEY_LOCAL_MACHINE 키가 잘못된 OraHome 경로를 가리키고 있다는 것을 알았지 만, 경로를 수정해도 경로가 변경되지 않더라도 연결 했으므로 TOAD가 작동을 멈추게 할까봐 두려워했습니다.

제안 사항?

답변

0

이 오류는 연결을 인스턴스화하는 사용자에게 Oracle 클라이언트를 실행할 권한이없는 경우 발생할 수 있습니다. WCF 서비스를 실행하는 계정에 올바른 사용 권한이 있는지 확인하십시오.

관련 문제