programing

Oracle SQL 개발자:실패 - 테스트 실패:네트워크 어댑터에서 연결을 설정할 수 없습니까?

abcjava 2023. 6. 10. 07:55
반응형

Oracle SQL 개발자:실패 - 테스트 실패:네트워크 어댑터에서 연결을 설정할 수 없습니까?

문제

보안상의 이유로 세부사항을 변경한 점 참고 부탁드립니다.하지만, 문제는 그대로 남아 있습니다.

Oracle 11g 데이터베이스를 herp-devDV.derp.edu 와 같은 위치의 서버에 설치했습니다.이제 위치에 있는 서버에 다른 Oracle 11g 데이터베이스(예: derp-db.derp.edu )가 있습니다.

Oracle SQL developer에 herp-devDV.derp.edu 및 derp-db.derp.edu 의 연결 이름, 사용자 이름, 암호, 호스트 이름 및 서비스 이름을 입력했습니다.derp-db.derp.edu 의 스키마에 연결할 수 있지만 herp-devDV.derp.edu 에는 연결할 수 없습니다.다음과 같은 메시지가 나타납니다.

Failure - Test failed: The Network Adapter could not establish the connection

세부 사항

다음과 같은 정보가 있습니다.

  • Itelnet 시 두 서버 모두에 대해 포트 1521이 열려 있지 않음
  • 제 청취자는 두 가지 모두에 대해 찬성하고 있습니다.
  • Oracle SQL Developer에서 derp-db.derp.edu 에 액세스할 수 있습니다.
  • Oracle 클라이언트가 내 로컬 시스템에 있음 + Oracle SQL Developer
  • 두 서버 모두에 원격 데스크톱을 설치할 수 있습니다.

내가 한 일

  • 구글링
  • 스택 오버플로
  • stop 및 start lnctl 명령 실행
  • .derp.edu.derp.edu 을 실행했습니다.lsnrctl status

다음과 같은 출력을 받았습니다.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
Start Date                03-JUN-2014 13:37:22
Uptime                    6 days 0 hr. 53 min. 4 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   D:\oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
Listener Log File         d:\oracle\diag\tnslsnr\HERP-DEVDB\listener\alert\log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=HERP-DEVDB.derp.edu)(PORT=1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "HERPDEVDBXDB" has 1 instance(s).
  Instance "herpdevdb", status READY, has 1 handler(s) for this service...
Service "herpdevdb" has 1 instance(s).
  Instance "herpdevdb", status READY, has 1 handler(s) for this service...
The command completed successfully

그런 다음 청취자를 확인합니다.ora를 찾아서

  SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = D:\oracle\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:D:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = HERP-DEVDB.derp.edu)(PORT = 1521))
    )
  )

이 시점에서, 저는 제 머리를 긁고 있다는 것을 고백합니다. 저는 아무것도 튀어나온 것을 보지 못했고 왜 이것이 효과가 없어야 하는지를 저에게 말합니다.

는 제가.derp.edu 을 하고 derp-db.derp.edu 을 입니다.lsnrctl status하십시오: 아래발췌참십시오하조을.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=DERP-DB.edu)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 64-bit Windows: Version 11.2.0.3.0 - Production
Start Date                18-MAY-2014 02:19:01
Uptime                    22 days 12 hr. 23 min. 18 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
---etc----

그래서 나는 여전히 머리를 긁적이고 있습니다.derp-db는 DERP-DB.edu 에 연결되지만 herp-devDB는 EXTPROC1521에 연결되는 이유는 무엇입니까?이거 어떻게 고쳐요?두 서버 간의 listener.ora 및 기타 파일은 인스턴스 이름을 제외하고는 거의 동일합니다.음.

  • EDIT1: 청자를 변경했습니다. ora in herp.이것은 그것을 고치지 않았습니다.

  • EDIT2: 포트 1521의 derp-db.derp.edu 에 텔넷할 수 없습니다.그래도 SQL Developer로 연결할 수 있나요? 뭐라고요?

  • EDIT3 포트 1521의 herp-devdb.derp.edu 에도 텔넷할 수 없습니다.
  • EDIT4 두 서버의 IP 주소를 ping할 수 없습니다.

어쨌든 도움을 주시면 대단히 감사하겠습니다.감사해요.

안녕하세요, 기키

저는 미래의 커뮤니티 사용자들의 이익을 위해 이것에 대답합니다.여러 가지 문제가 있었습니다.이 문제가 발생하면 다음을 확인하는 것이 좋습니다.

  • tnsnames.ora가 완전하고 연결할 데이터베이스가 있는지 확인합니다.
  • 연결할 서버를 암호화할 수 있는지 확인합니다.
  • 서버에서 사용 중인 특정 응용프로그램으로 원하는 포트에서 열려 있는지 확인합니다.

일단 이 세 가지 일을 하고 나면, 저는 제 문제를 해결했습니다.

저도 비슷한 문제가 있었는데 계속해서 같은 오류가 발생했습니다.저는 수신기 포트 번호 변경, 방화벽 해제 등 많은 시도를 했습니다.마침내 listener.or 파일을 변경하여 문제를 해결할 수 있었습니다.다음 행을 변경했습니다.

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

로.

(ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521)) 

을▁▁the에 항목을 했습니다./etc/hosts 파일파.

Oracle net Manager를 사용하여 listener.ora 파일의 위 행을 변경할 수 있습니다.net Manager를 사용하는 방법에 대한 자세한 내용은 Oracle Net Services 관리자 설명서를 참조하십시오.

서비스이름을 도 있습니다.database_name.domain_name연결하는 동안 SID 대신 ).

도움이 되길 바랍니다.

오라클 11g을 설치하고 데이터베이스를 만들 때도 같은 문제가 있었습니다.

청취자가 수동으로 작성해야 하는지도 모르겠습니다.따라서 Net Configuration Assistant를 열고 수신기를 수동으로 만듭니다.

그리고 sql developer를 통해 로컬로 만든 데이터베이스를 연결할 수 있습니다.

Listener.ora 파일에 정의된 명시적인 IP 주소를 호스트 이름으로 작성하여 해결했습니다.

여기에 이미지 설명 입력

SQL Developer "localhost" "192.168.1.2" "Hostname"은 "Hostname"입니다.

아래 그림에서 수정한 입력란을 강조 표시했습니다.

당신은 다파일찾수있라는 이름의 수 .listener.ora 폴더 oraclexe\app\oracle\product\11.2.0\server\network\ADMIN이 포함되어 .

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = Codemaker-PC)(PORT = 1521))
    )
  )

DEFAULT_SERVICE_LISTENER = (XE)

HOST(여기서는 Codemaker-PC)가 컴퓨터 이름이어야 합니다.올바르지 않으면 컴퓨터 이름으로 변경합니다.

그런 다음 관리자 권한으로 실행되는 명령 프롬프트에서 다음 명령을 시도합니다.

lsnrctl start

올바른 호스트와 포트를 지정하면 다음과 같이 해결할 수 있습니다.

  1. 오라클 넷 관리자 열기
  2. 현지의
  3. 청취자

주소 2의 수신기에서 호스트를 Oracle Developer에 복사합니다.

마침내 오라클에 연결

흥미롭게도, 저는 svc의 것과 정반대의 움직임을 함으로써 같은 문제를 해결할 수 있었습니다! 저는:

my tnsnames.ora / listener.ora 파일의 FQDN 호스트 이름을 localhost로 바꾸고 수신기 서비스를 다시 시작합니다.

둘째, SQL Developer 입력 텍스트 상자의 사용자 이름으로 "SYS AS SYSDBA"를 사용해야 했습니다.

SQL Developer를 로컬 인스턴스에 연결할 수 있게 되었습니다.

listner만 시작하면 데이터베이스와 연결할 수 있습니다.편집기에서 실행되는 명령:

lsnrctl 시작

그것은 잘 작동합니다.

저도 같은 문제에 직면했습니다.방화벽을 해제해야 했고, 작동했습니다.

포트를 열 수도 있습니다. http://windows.microsoft.com/en-in/windows/open-port-windows-firewall#1TC=windows-7

저한테는 효과가 있었어요 누군가를 도울 수도 있어요방화벽을 해제합니다.RHEL 7에

systemctl stop  firewalld

저의 경우 호스트가 tnsnames.ora와 listener.ora로 다르게 설정되었습니다.하나는 컴퓨터의 전체 이름으로 설정되었고 다른 하나는 IP 주소로 설정되었습니다.컴퓨터의 전체 이름과 동기화를 시켰더니 작동했습니다.오라클 서비스를 다시 시작하는 것을 잊지 마십시오.

저는 IP 주소와 컴퓨터 이름이 궁극적으로 동일하다고 생각하기 때문에 이것이 왜 문제를 일으켰는지 아직도 정확히 이해할 수 없습니다.

언급URL : https://stackoverflow.com/questions/24127839/oracle-sql-developer-failure-test-failed-the-network-adapter-could-not-estab

반응형