2011-12-16 1 views
2

시간이 많이 걸리는 것을 알고 있지만이 정보를 내 상황에 적용하는 방법을 알 수 없습니다.DB 연결 테스트 중 - ORA-12154 : TNS : 지정된 연결 식별자를 확인할 수 없습니다.

DB LINK에 연결하려고하는 두 개의 데이터베이스가 있습니다. 이들은 :

  • BBEGMTD1
  • OPEGMTP1.WORLD

DB를 링크가 이미 이름 PE_DBLINK.WORLD으로, 누군가에 의해 정의되고있다.

모두 내 컴퓨터에서이 데이터베이스의에 액세스 할 수 있으므로 tnsnames.ora가 어떻게 영향을 받을지 알 수 없습니다. 제가 DB 링크를 테스트 할 때

그러나 나는 유명한 얻을 :

링크 : "PE_DBLINK.WORLD"오류 : ORA-12154 : TNS가 : 지정된 연결 식별자를 확인할 수 없습니다

올바른 방향으로 나를 가르쳐 주시겠습니까? tnsnames.ora는 BBEGMTD1 서버에서 수정해야합니까? @Chance 주석, select * from ALL_DB_LINKS 반환 당으로

:

PUBLIC       
PE_DBLINK.WORLD                 
PRICING      
OPEGMTP1.WORLD                 
03-NOV-11 

PUBLIC       
EBPROJ.WORLD                  
EBPROJ       
MIDGMTP1                   
17-JUN-09 

MYOPEGMTP1WORLD.WORLD               
PRICING      
(DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=ORA04SOUK) (PORT=1521)) (CONNECT_D 
ATA= (SERVER=dedicated) (SERVICE_NAME=OPEGMTT1))))       
16-DEC-11 

이 세부 사항을 표시하는 두꺼비의 방법 TNSNames 편집기입니다 최대 표시되고 :

enter image description here

+0

이것을 실행하고 결과를 여기에 게시하십시오 :'select * from ALL_DB_LINKS' – chance

+0

@chance - 완료. –

+0

TOAD에서 tnsnames.ora의 contenet을 볼 수있는 글을 게시하십시오. 그리고 테이블 ALL_DB_LINKS의 내용을 다시 게시하십시오. – chance

답변

3
  1. 실행이 DBLink PE_DBLINK.WORLD 호스트 확인 :

    select * from ALL_DB_LINKS

  2. 호스트 (예 : 호스트)에서 tnsnames.ora를 확인하십시오. OPEGMTP1.WORLD)에 저장됩니다. 어떤이 (로케일 기계)

    퍼센트의 ORACLE_HOME %의 \ 네트워크에 위치 \ 관리자 \ tnsnames.ora를

  3. 당신의 tnsnames.ora에서 찾을 수없는 경우, 다음과 같이 추가 :

    OPEGMTP1합니다. 세계 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = ORA04SOUK) (PORT = 1521)) (CONNECT_DATA = (SERVER = 전용) (SERVICE_NAME = OPEGMTT1)))

  4. 또는 자신의 DBLINK를 만들 :

    CREATE DATABASE LINK MYOPEGMTP1.W ORLD 비밀 번호로 사용자 ID로 연결 USING '(DESCRIPTION = (ADDRESS = (프로토콜 TCP) (호스트 = ORA04SOUK) (포트 = 1521)) (CONNECT_DATA = (서버 전용 = (SERVICE_NAME = OPEGMTT1)))))

+0

업데이트되었습니다 그것의 거기, 내가 한 비록 추가 :'PE_DBLINK.WORLD = (설명 = (ADDRESS = (PROTOCOL = TCP) (HOST = ORA04SOUK) (PORT = 1521) ) (CONNECT_DATA = (SERVER = 전용) (SERVICE_NAME = OPEGMTT1) ) )'아무 소용 –

+0

에 tnsames.ora도'HOST = OPEGMTP1.WORLD' 아무 항목이 거기 없다는 것을 내가 실종 됐어? –

+0

나는 그렇게 생각한다. 또는 DBLink를 변경할 수 있습니다. – chance

2

올바른 TNS 항목을 확인하려면 원본 DB 호스트를 확인하십시오. DB Link는 RDBMS 호스트에서 RDBMS 호스트로 만들어 지므로 PC는 무의미합니다.

0

개인용 DB 링크 인 경우 테스트 할 DB Link Owner로 로그인해야합니다.

-1

db_link는 db 서버에서 db 서버로, 클라이언트에서 서버로는 아닙니다. 따라서 두 데이터베이스 서버 모두 서비스를위한 올바른 tns 항목이 있는지 확인하십시오.

데이터베이스 서버의 tnsnames.ora에는 서비스를위한 tns 항목이 있어야합니다.