2012-08-20 2 views
0

Oracle 데이터베이스에 연결하는 독립형 워크 스테이션이 있습니다. 그것은 년 동안 잘 작동하고있어 다음 갑자기 오류가 발생합니다 :TNS : 이름 조회 실패

[INTERSOLV] [ODBC Oracle 드라이버] [오라클] ORA-12545 : TNS : 이름 조회 실패

나는 핑 서버 명령 프롬프트에서 연결하려고하면 올바른 IP 주소로 다시 응답합니다. 내가 TNSPING을한다면, 괜찮을 것 같습니다.

나는 컴퓨터 네트워크에있는 별도의 PC를 가지고 있으며 서버에 잘 연결되어 있습니다. 위의 오류는 굵게 표시되어 있지 않습니다.

독립 실행 형 PC에 연결하는 다른 Oracle 데이터베이스가 있는데 여전히 정상적으로 작동합니다. 따라서 모든 오라클 데이터베이스에 연결할 수있는 기능을 잃어버린 것만은 아닙니다.

나는 그것이 작동하지 않을 것이고 그것을 고치려고 행운이 없었던 이유를 혼동합니다. 계속 진행하는 방법을 모르겠습니다.

도움을 주시면 감사하겠습니다.

답변

0

최근에 다른 Oracle 소프트웨어를 설치 했습니까?

다른 위치에 tnsnames.ora 개의 파일이 여러 개있을 수 있으며 ODBC 드라이버가 잘못된 파일을 찾은 것일 수 있습니다.

경로 환경 변수를 검사하면 올바른 경로가 첫 번째 위치에 있는지 여부를 확인할 수 있습니다.

+0

tnsnames.ora 파일을 복사 한 몇 개의 폴더가 있지만 (항상 보유하고 있지만) 아무 것도 변경되지 않았습니다. 내가 파일을 볼 때, 나는 그들이 말할 수있는 한 지금까지의 모습을 보았다. –

1

TNSNAMES.ORA 파일이 상주하는 위치를 가리 키도록 환경 변수 TNS_ADMIN을 정의하십시오.

편집 :

SQL * Plus로 직접 연결할 수 있습니까? 이 설치되어있는 경우

,이 (에 conenct하는 ID와 데이터베이스 사용자와 DB를 교체) 작업을해야합니다

수정 SQLNET.ORA 파일 :

sqlplus [email protected] 

EZCONNECT와 연결을 시도하는 것이 실패 :

NAMES.DIRECTORY_PATH=(TNSNAMES,EZCONNECT) 

변경 Oracle ODBC 드라이버 구성 마법사에서 ODBC 연결이 EZCONNECT 문자열을 사용하기 :

는 함께 TNS 서비스 이름 바꾸기 :

<db_host>:port/<db_name> 

예를 들어,

MYHOST:1521/MYDB 

이 포트 1521 (기본 포트)에서 myhost 호스트의 데이터베이스 MYDB를 가리 킵니다.

연결 테스트를 시도하십시오. 실패한 경우 호스트 이름 대신 IP 주소를 사용해보십시오.

의견에서 TNSNAMES 항목을 감안할 때 :

ESTRNP = (DESCRIPTION = 
      (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = TCP)(HOST = ESTRNP)(PORT = 1521)) 
      ) 
     (CONNECT_DATA = (SID = ESTRNP)) 
     ) 

당신은에 CONNECT_DATA 라인을 변경하려고 할 수 있습니다

(CONNECT_DATA = (SERVICE = ESTRNP)) 

는 데이터베이스의 SID가 변경되었음을 입니다. 이 항목은 작동하는 시스템의 항목과 동일합니까?

+0

시스템 특성, 환경 변수에서 값이 c : \ TNS_ADMIN 인 TNS_ADMIN으로 정의 된 변수가 있고 내 tnsnames.ora 및 sqlnet.ora 파일이 있습니다. 내가 게시하기 전에 그 일을 끝냈습니다. 그게 무슨 뜻입니까? –

+0

SQL * Plus에 익숙하지 않습니다. 먼저 오라클 데이터베이스를 사용하는 .NET 애플리케이션에서 오류가 발생하기 시작했습니다. 그런 다음 "Oracle ODBC 32bit Test"를 사용해 보았는데 동일한 오류가 발생했습니다. 그런 다음 내 ODBC 데이터 원본 관리자로 가서 해당 연결에 대한 파일 DSN을 삭제하고 다시 추가하면 지금도 같은 오류가 발생합니다. 어디서나 연결할 수는 없지만, 내가 말한 것처럼 cmd 프롬프트에서 ping을 수행 할 수 있으며 올바른 IP 주소를 사용하면 문제가 없습니다. –

+0

SQL * Plus 경로를 사용하여 다음과 같은 오류가 발생했습니다. "ORA-12514 TNS : listener가 연결 설명자에 제공된 SERVICE_NAME을 해결할 수 없습니다"... 다른 데이터베이스와 동일한 구문을 시도하고 나에게 오류로 인해 "서비스 이름을 확인할 수 없습니다." 사과, 데이터베이스 설계 및 연결 일반적으로 내 강한 소송이 아니며 오라클도 내 선호하는 데이터베이스가 아닙니다. 나는 다른 팀이 그것을 사용하고 정보를 얻기 위해 그것과 연결해야만하기 때문에 연결 만합니다. 나는 간단히 EZconnect 경로를 들여다 보았고 그곳에 행운이 없다. –