개요
Tibero에서 Oracle로 DBLink를 구성할 때 Gateway를 Tibero 서버가 아닌 Oracle 서버에 설치 및 운영하는 방식에 대해 안내합니다.
(Tibero Gateway 프로그램을 Oracle 서버에 직접 배치한 동작)
주의
•
Gateway 프로세스가 Oracle 서버에 동작하고 있을 시 DB Link 사용이 가능합니다. (서버 재부팅 시 재 기동 필요)
•
Oracle Client와 Tibero Gateway 버전이 맞아야 합니다. (호환 가능 여부 확인 필요)
•
Oracle listener port인 9999가 열려 있어야 하므로, Oracle 서버의 Filrewall 방화벽 설정 확인이 필요합니다.
방법
1. [Oracle 서버] tibero gateway 파일을 Oracle 서버로 복사
디렉토리 생성 후 gw4orcl 파일을 업로드 합니다.
$ mkdir tibero
$ cd tibero
$ ls
gw4orcl_12c
SQL
복사
필요한 라이브러리를 확인합니다.
주의
$ ldd gw4orcl_12c
linux-vdso.so.1 (0x00007ffed11b1000)
libclntsh.so.12.1 => /home/oracle/db/product/12.1.0/dbhome_1/lib/libclntsh.so.12.1 (0x00007fd226c79000)
libm.so.6 => /lib64/libm.so.6 (0x00007fd2268f7000)
libnnz12.so => /home/oracle/db/product/12.1.0/dbhome_1/lib/libnnz12.so (0x00007fd2261ae000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fd225faa000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fd225d8a000)
libons.so => /home/oracle/db/product/12.1.0/dbhome_1/lib/libons.so (0x00007fd225b3c000)
libclntshcore.so.12.1 => /home/oracle/db/product/12.1.0/dbhome_1/lib/libclntshcore.so.12.1 (0x00007fd22556f000)
libipc1.so => /home/oracle/db/product/12.1.0/dbhome_1/lib/libipc1.so (0x00007fd22513c000)
libmql1.so => /home/oracle/db/product/12.1.0/dbhome_1/lib/libmql1.so (0x00007fd224ec5000)
libc.so.6 => /lib64/libc.so.6 (0x00007fd224b00000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fd2248e7000)
librt.so.1 => /lib64/librt.so.1 (0x00007fd2246df000)
libaio.so.1 => /lib64/libaio.so.1 (0x00007fd2244dc000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fd2242c5000)
/lib64/ld-linux-x86-64.so.2 (0x00007fd22a713000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fd2240ad000)
SQL
복사
2. [Oracle 서버] TBGW_HOME 환경 변수 추가
$ vi ~/.bash_profile
#. Tibero
export TB_HOME=/home/oracle/tibero
export TBGW_HOME=$TB_HOME/client/gateway
$ source ~/.bash_profile
SQL
복사
3. [Oracle 서버] Gateway 설정 파일(tbgw.cfg) 작성
$ cd /home/oracle/tibero/client/gateway/oracle/config
$ mkdir config
$ cd config/
$ vi tbgw.cfg
LISTENER_PORT=9999
LOG_DIR=/home/oracle/tibero/client/gateway/oracle/log
LOG_LVL=2
SQL
복사
4. [Oracle 서버] Gateway 실행
$ cd $TBGW_HOME
$ ./gw4orcl_12c
$ ps -ef | grep gw4orcl_12c
oracle 3723 1 0 14:01 ? 00:00:00 ./gw4orcl_12c
oracle 3739 1529 0 14:01 pts/0 00:00:00 grep --color=auto gw4orcl_12c
#. 프로세스 확인
$ ps -ef | grep gw4orcl_12c
SQL
복사
5. [Tibero 서버] tbdsn.tbr 설정
HOST는 Oracle 서버 IP를 입력, Port는 Oracle LISTNER_PORT를 입력합니다.
$ vi $TB_HOME/client/config/tbdsn.tbr
oracle_remote=(
(GATEWAY=
(LISTENER=(HOST=192.168.58.20)(PORT=9999))
(TARGET=ORA)
(TX_MODE=GLOBAL)
)
)
SQL
복사
6. [Tibero 서버] Dblink 생성 및 접속 테스트
$ tbsql tibero/tmax
SQL> create database link test connect to tibero identified by 'tmax' using 'oracle_remote';
Database Link 'TEST' created.
SQL> select * from dual@test;
DUMMY
-----
X
1 row selected.
SQL
복사
영문 데이터 확인
SQL> select * from en@ora_remote;
NAME
----------
THIS
IS
TEST
3 rows selected.
SQL
복사
한글 데이터 확인
SQL> select * from hangul@ora_remote;
NAME
----------
한글
테스트
입니다
3 rows selected.
SQL
복사