문서유형ㅣ기술정보
분야ㅣ 인터페이스/연동
적용제품버전ㅣ 6FS07PS, 7FS02, 7FS02PS
문서번호ㅣ TIITI001
개요
Tibero DB에서 Oracle로 DBLink를 설정 방법을 안내합니다.
- Oracle Instant Client 설치 후 Tibero 서버에 Gateway 구성
- Tibero DB에서 Oracle로 DBLink를 설정 시, Oracle Instant Client 설치 및 Tibero 서버에 Gateway 구성
방법
사전 확인 및 설정
1. listener.ora 설정 (listner 이름은 동일하게 설정)
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(SID_NAME=orcl)
(ORACLE_HOME=/home/oracle/db/product/11.2.0/dbhome_1)
)
)
LISTENER=
(DESCRIPTION_LIST=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.58.130)(PORT=1521))
)
)
2. tnsnames.ora 설정
ORA =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.58.130)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
LISTENER_ORA =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.58.130)(PORT = 1521))
3. listener 재 기동
$ lsnrctl stop $ lsnrctl start
[Tibero 서버] Oracle Client 설치
1. Oracle Client 디렉토리 생성
$ mkdir /home/tibero/oracle $ chmod -R 777 /home/tibero/oracle
2. Oracle 버전에 맞는 Instant Client 설치 및 압축 해제
$ unzip instantclient-basic-linux.x64-19.21.0.0.0dbru.zip
3. tibero OS 계정에서 .bash_profile 설정
$ vi ~/.bash_profile #. Oracle config export ORACLE_HOME=/home/tibero/oracle/instantclient_19_21 export TNS_ADMIN=$ORACLE_HOME/network/admin export NLS_LANG=KOREAN_KOREA.UTF8 #.---- TIBERO config export TB_HOME=/home/tibero/tibero7 export TB_SID=tibero export PATH=.:$TB_HOME/bin:$TB_HOME/client/bin:$JAVA_HOME/bin:$ORACLE_HOME:$PATH export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib:$LD_LIBRARY_PATH:$ORACLE_HOME:$LD_LIBRARY_PATH export TBGW_HOME=$TB_HOME/client/gateway
설정 적용
$ source ~/.bash_profile
4. tnsnames.ora 파일 생성
$ mkdir -p $ORACLE_HOME/network/admin
$ vi $ORACLE_HOME/network/admin/tnsnames.ora
ORA=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.58.130)(PORT=1521))
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=orcl)
)
)5. Tibero Gateway 파일을 $TBGW_HOME으로 복사
$ cp $TB_HOME/client/bin/gw4orcl $TBGW_HOME/
참고
tibero7부터 gw4orcl 파일 하나로 통합되어 제공됩니다.
6. $TBGW_HOME/oracle/config 디렉토리 생성 및 tbgw.cfg 파일 생성
$ mkdir -p $TBGW_HOME/oracle/config $ vi $TBGW_HOME/oracle/config/tbgw.cfg LISTENER_PORT=9999 LOG_DIR=/home/tibero/tibero7/client/gateway/oracle/log LOG_LVL=2
주의
LOG_DIR을 절대 경로로 설정하지 않으면 gateway 비정상 종료 문제 발생할 수 있습니다.
7. tbdsn.tbr 파일 수정
$ vi $TB_HOME/client/config/tbdsn.tbr
oracle=(
(GATEWAY=
(LISTENER=(HOST=localhost)(PORT=9999))
(TARGET=ORA)
(TX_MODE=GLOBAL)
)
)8. Gateway 라이브러리 확인
$ cd $TBGW_HOME $ ls gw4orcl oracle
라이브러리 연결 확인
Oracle Instant Client 라이브러리 정상 연결 확인이 필요합니다.
$ ldd gw4orcl
linux-vdso.so.1 => (0x00007ffc0cf92000)
libclntsh.so.19.1 => /home/tibero/oracle/instantclient_19_21/libclntsh.so.19.1 (0x00007fa2fcd70000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fa2fcb6c000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa2fc950000)
libm.so.6 => /lib64/libm.so.6 (0x00007fa2fc64e000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa2fc280000)
libnnz19.so => /home/tibero/oracle/instantclient_19_21/libnnz19.so (0x00007fa2fbc07000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fa2fb9ed000)
librt.so.1 => /lib64/librt.so.1 (0x00007fa2fb7e5000)
libaio.so.1 => /lib64/libaio.so.1 (0x00007fa2fb5e3000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fa2fb3c9000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa300f7f000)
libclntshcore.so.19.1 => /home/tibero/oracle/instantclient_19_21/libclntshcore.so.19.1 (0x00007fa2fae24000)
9. Gateway 실행 및 접속 확인
Gateway 실행
$ ./gw4orcl $ ps -ef| grep gw4 tibero 13883 1 0 06:54 ? 00:00:00 ./gw4orcl tibero 35737 10765 0 13:36 pts/0 00:00:00 grep --color=auto gw4
DBLink 접속 테스트
$ tbsql tibero/tmax@oracle tbSQL 7 TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. Connected to ORACLE GATEWAY using oracle. SQL> select * from dual; DUMMY ----- X 1 row selected.