먼저 DBEAVER로 오라클에 접속하려면 오라클 클라이언트를 설치해야한다.
각 오라클 버전에 맞는 클라이언트 설치
압축파일 해제시 아래와 같이 설치파일들이 풀리는데
setup.exe로 설치해주자.

설치 완료 이후엔 아래와 같이 network를 제외한 폴더 및 jar들이 풀린다.
network/admin/ 폴더 추가뒤 tnsnames.ora 를 만들어준다.

(client) tnsnames.ora
| PRACCT01 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = VM서버의 아이피)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = PRACCT01) ) ) |
여기까지 설정이 끝났다면 우선적으로 DB 내에서도 listner.ora와 tnsnames.ora를 설정해주자
(vm) listener.ora
ADR_BASE_LISTENER_PRACCT01 = /home/oracle/base LISTENER_PRACCT01 = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521)) ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PRACCT01) (ORACLE_HOME = /home/oracle/base/product/11.2.0/dbhome_1) ) ) |
--여기서 0.0.0.0은 모든 ip 허용을 뜻한다. 본인 pc만 허용할거라면 pc ip를 입력해주면 된다.
(vm) tnsnames.ora
PRACCT01 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = VM서버의 아이피 )(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = PRACCT01) ) ) |
vm 서버내의 tnsname은 안해줘도 되지만 리스너를 통한 접속을 테스트해보기 위해서 설정해줬다
1. vm에서 listener 상태 확인
lsnerctl status 리스너이름 (본인은 추후 멀티인스턴스 환경 구성을 목적으로 리스너 name을 분리했다)

만약에 아래와 같이 Service has instance가 아닌
listener supports no services 와 같이 나온다면 현재 instance가 리스너에 등록되어있지 않다는 뜻이다

이때는 수동으로 등록을 해주어야하는데, 초기 설치간 리스너먼저 설정하고 db 등록할경우 이럴 수 있다고 한다.
sqlplus 접속
| sqlplus / as sysdba SQL> SHOW PARAMETER local_listener; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ local_listener string VALUE가 비어있다면 DB 연결이 안되었다는것. SQL> ALTER SYSTEM SET LOCAL_LISTENER='(ADDRESS=(PROTOCOL=TCP)(HOST=VM아이피)(PORT=1521))' SCOPE=BOTH; System altered. SQL> ALTER SYSTEM REGISTER; System altered. |
로컬 리스너의 아이피를 파라미터에 등록해주고 system register 해주면 등록 완료
등록이 되어있지 않다면 당연히 리스너를 통한 접속은 불가하다

VM 내에서 @ 를 통하여 리스너 접속이 되었다면 리스너와 DB의 문제는 이제 없다.
그럼에도 tool로의 접속이 안된다면
1.먼저 해당 포트가 열려있는지 확인
| [root@localhost ~]# netstat -tlnp | grep 1521 tcp 0 0 :::1521 :::* LISTEN 47225/tnslsnr (하지만 방금 tns를 통한 vm에서 접속을 확인했으므로 리스너 포트의 문제는 아니다) |
2.방화벽 확인
centos6의 경우 firewalld가 아닌 iptables 로 방화벽 설정을 해주어야한다.
| a) 현재 방화벽 정책 확인 [root@localhost ~]# sudo service iptables status Table: filter Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 <- 22를 제외한 나머지는 전부 reject 5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT) num target prot opt source destination 1 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT) num target prot opt source destination b) iptable tcp 4번에 해당되는 정책에 1521 포트 신규 허용 [root@localhost ~]# sudo iptables -I INPUT 4 -p tcp --dport 1521 -j ACCEPT c) 1521 만 확인 [root@localhost ~]# sudo iptables -L -n | grep 1521 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:1521 d) 변경한 uptables save [root@localhost ~]# sudo service iptables save iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] [root@localhost ~]# sudo service iptables restart iptables: Setting chains to policy ACCEPT: filter [ OK ] iptables: Flushing firewall rules: [ OK ] iptables: Unloading modules: [ OK ] iptables: Applying firewall rules: [ OK ] e) 최종 확인 [root@localhost ~]# service iptables status Table: filter Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:1521 <<4번자리에 모든ip 1521의 방화벽 허용됨. 5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 6 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT) num target prot opt source destination 1 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain OUTPUT (policy ACCEPT) num target prot opt source destination |
여기까지 한다면 CentOS6에서도 외부 PC에서 tool을 활용한 접속에 문제가 없을것이다.
추가 안되는 부분이 있으면 댓글 적어주세요
'DB' 카테고리의 다른 글
| 오라클 sys로 원격 접속 안될때 (0) | 2025.11.11 |
|---|---|
| 오라클 멀티 인스턴스 만들기 (0) | 2025.11.11 |
| CentOs 6에 오라클 11g R2 설치하기 (11.2.0.1) (0) | 2025.11.11 |
| [ORACLE] centOS에 오라클 설치하기 (0) | 2023.09.13 |