오라클 외부접속 허용 tnsnames, listener :: 개발/일상_Mr.lee

오라클 외부접속 허용 tnsnames, listener

Posted by Mr.mandu.
2017. 8. 23. 08:30 개발/DB

안녕하세요 ~!

오라클 설치 후 기본 localhost 에서는 접속이 잘되지만

외부에서 접속하려고할때 접속안되는 경우가 많습니다.

사실 안될겁니다. 기본적으로 막혀있기 때문입니다.



접속시도를 하게되면 이런식으로 에러창이 출력됩니다.

저는 현재 sqlGate 툴을 사용하고 있습니다.


그러면 이제 tnsnames.ora, listener.ora를 수정해보겠습니다.

현재 제 컴퓨터에는

F:\private\oracle11G\oracle11GPath\software\NETWORK\ADMIN

디렉토리 밑에 파일이 있습니다.


오라클 설치경로에 

software\NETWORK\ADMIN 에 파일들이 있을겁니다.


먼저 리스너를 수정해보겠습니다.


listener.ora

# listener.ora Network Configuration File: F:\private\oracle11G\oracle11GPath\software\network\admin\listener.ora

# Generated by Oracle configuration tools.


SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = CLRExtProc)

      (ORACLE_HOME = F:\private\oracle11G\oracle11GPath\software)

      (PROGRAM = extproc)

      (ENVS = "EXTPROC_DLLS=ONLY:F:\private\oracle11G\oracle11GPath\software\bin\oraclr11.dll")

    )

  )


LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

      (ADDRESS = (PROTOCOL = TCP)(HOST = 서버IP)(PORT = 1521))

    )

  )


ADR_BASE_LISTENER = F:\private\oracle11G\oracle11GPath


빨간글씨 로 쓴 부분을 서버IP로 변경합니다.

이번에는 tnsnames.ora를 수정해보겠습니다.


tnsnames.ora

# tnsnames.ora Network Configuration File: F:\private\oracle11G\oracle11GPath\software\network\admin\tnsnames.ora

# Generated by Oracle configuration tools.


LISTENER_ORCL =

  (ADDRESS = (PROTOCOL = TCP)(HOST = 서버IP)(PORT = 1521))



ORACLR_CONNECTION_DATA =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

    )

    (CONNECT_DATA =

      (SID = CLRExtProc)

      (PRESENTATION = RO)

    )

  )


ORCL =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 서버IP)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )


마찬가지로 서버IP로 변경해 주었습니다.

1521포트는 오라클 기본 포트 입니다.

그러면 이제 sqlGate에서 접속해 보겠습니다.






sqlGate에서 TNS를 새로 만들어보겠습니다.

+ 버튼을 선택해서 새로 만듭니다.



TNS이름과 ServiceName을 입력합니다.

ServiceName은 서버에 설정한  tnsnames.ora 에 기재했던 네이밍 입니다!

프로토콜다 위의 사진처럼하고요

그리고 그 밑의 IP는 서버 주소를 입력해주세요.

그럼 자동적으로 tns가 만들어 집니다.




잘은 안보이지만 이제 리스너와 서비스를 실행 시키겠습니다.

OracleOraDb11g_home1TNSListener가 리스너를 뜻하고

OracleServiceDB명은 오라클을 의미합니다.


실행을 시키고 접속하면!

성공적인 모습을 확인 할 수 있습니다.


[개발/database] - [orracle] 오라클 11g 설치 / system 계정 로그인

[개발/database] - 오라클 테이블스페이스 생성, 계정생성, 계정삭제, 권한 처리