1)개요 
이 전편에 이어서 Windows Server에 Oracle DB를 설치하고 Ubuntu에 Oracle Instant Client를 설치해서 서로 연결해보도록 하겠습니다. (쿼리 조회로 확인해 보겠습니다.)

2)Windows Oracle Server 
www.oracle.com/database/technologies/oracle-database-software-downloads.html에 접속해서 설치를 진행합니다. 

여기서 Windows 64를 설치합니다.

진행이 잘 안되면 goddaehee.tistory.com/191를 참고하면 됩니다.
설치가 완료되면 Command Shell에 sqlplus를 써서 사용하면 됩니다. 여기서 user-name을 정해주지 않았다면 sys as sysdba 를 쓰고 비밀번호는 Oracle DB설치시에 작성하셨던 password를 기입하면 됩니다. 

접속이 잘 되는 것을 확인했으면 Client에서 Oracle Server로 붙을 수 있도록 listener.ora 를 설정해보도록 하겠습니다. 
listener.ora 위치는 oraclexe>app>oracle>product>12.1.0>server>network>ADMIN>listener.ora 확인합니다. .ora 수행할 때는 Permission 이 있어야 하기 때문에 admin으로 실행시켜주면 됩니다.

본격으로 안의 내용을 보면 SID_NAME을 기억해둡니다. ubuntu에서 SID를 넘겨서 확인하게 됩니다. HOST는 server가 되는 IP를 등록해줘도 되지만 HOST명을 등록해도 됩니다. 기본 포트는 1521입니다. 설정이 완료되면 저장합니다.


그리고 Oracle Port를 Enable 해줍니다. 이렇게 하면 Oracle Server의 설정은 끝이 납니다.


3)Linux Oracle Client 
Oracle Instant Client를 설치하는데
blog.kimsfactory.com/entry/Ubuntu-1604-%EC%9A%B0%EB%B6%84%ED%88%AC-%EC%98%A4%EB%9D%BC%ED%81%B4-%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8-%EC%84%A4%EC%B9%98-sqlplus-php56-php70-oracle-client-install 를 참고하시면 됩니다. 

포스팅을 참고해서 설치했을 때 Oracle Client Library Path를 설정해주지 않아서 에러가 발생했었습니다. 
에러 내용 : ./sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory
$ vi /etc/ld.so.conf.d/oracle.conf && sudo chmod o+/etc/ld.so.conf.d/oracle.conf
/usr/lib/oracle/12.1/client64/lib/

$ vi /etc/profile.d/oracle.sh && sudo chmod o+/etc/profile.d/oracle.sh
export ORACLE_HOME=/usr/lib/oracle/12.1/client64
export TNS_ADMIN=/etc/oracle //tnsnames.ora

$ vi ~/.bash_profile
PATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH
export PATH

$ source ~/.bash_profile

$ vi /etc/oracle/tnsnames.ora 파일을 열람하게 되면 Windows Server (Oracle DB) 들어가기 위한 값을 설정해 줍니다. HOST명은 Windows Server 이름을 등록하고 PORT=1521입니다. 그리고 XE는 listener에 등록한 값 똑같이 설정하였습니다.

sqlplus username/password@dbhost(Ip):port/SID 포맷으로 작성합니다.

(혹시, 설정을 다 해줬음에도 불구하고 sqlplus64: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory 에러가 발생하게 되면 아래 패키지를 설치해주세요)
$ sudo apt-get install libaio1 libaio-dev

4)연결 확인

 

Windows Server의 Oracle DB 의 hr.departments 테이블 값을 불러올 때 Linux 환경과 일치하다는 것을 확인할 수 있습니다. 

windows > 


linux >