문서유형ㅣ기술정보
분야ㅣ 인터페이스/연동
적용제품버전ㅣ T6, T7
문서번호ㅣTIITI058
개요
Tibero to Sybase DB Link 연결 방법에 대한 가이드입니다.
사전 작업
- JDBC 다운
- Sybase JDBC 확보
방법
Gateway 설정
$TB_HOME/client/bin 경로에 있는 tbJavaGW.zip 파일을 복사하여 원하는 폴더에 압축을 해제합니다.
$ unzip tbJavaGW.zip
압축 해제 후 생성된 tbJavaGW 폴더에 다운로드한 Sybase JDBC(jconn.jar) 파일을 이동합니다.
-rw-r--r--. 1 tibero tibero 588337 10월 13 02:12 commons-collections.jar -rw-r--r--. 1 tibero tibero 24019 10월 13 02:12 commons-daemon-1.0.6.jar -rw-r--r--. 1 tibero tibero 42492 10월 13 02:12 commons-pool.jar -rw-rw-r--. 1 tibero tibero 2168798 10월 15 15:55 jconn42.jar -rw-r--r--. 1 tibero tibero 2075494 10월 13 02:12 msllogger-18.jar -rw-r--r--. 1 tibero tibero 522253 10월 13 02:12 tbgateway.jar
tbgw 파일 수정
확보한 jconn.jar 버전에 맞게 asejdbc 파일을 수정합니다.
#! /bin/sh
#Classpath
commonsdaemon=./lib/commons-daemon-1.0.6.jar
commonspool=./lib/commons-pool.jar
commonscollections=./lib/commons-collections.jar
msllogger=./lib/msllogger-18.jar
msjdbc=./lib/sqljdbc.jar:./lib/sqljdbc4.jar
asejdbc=./lib/jconn42.jar # 해당 부분 수정
postgresqljdbc=./lib/postgresql-8.4-701.jdbc3.jar
gateway=./lib/tbgateway.jar
mysqljdbc=./lib/mysql-connector-java-5.1.40-bin.jar
hanajdbc=./lib/ngdbc-2.20.17.jar
hivepre=./lib/httpclient-4.4.jar:./lib/libthrift-0.9.3.jar:./lib/httpcore-4.4.jar:./lib/slf4j-api-1.7.25.jar:./lib/curator-client-2.12.0.jar:./lib/commons-lang-2.6.jar:./lib/guava-14.0.1.jar
hive=$hivepre:./lib/hive-jdbc-3.1.2.jar:./lib/hive-service-rpc-3.1.2.jar:./lib/hive-service-3.1.2.jar:./lib/hive-common-3.1.2.jar:./lib/hive-serde-3.1.2.jar
#log4j properties
#log4jfile must be exists on classpath
log4jfile=jgwlog4msl18.properties
#Main Class
mainclass=com.tmax.tibero.gateway.main.GatewayMain
configfile=./jgw.cfg
if [[ $# -gt 0 ]] && [[ $1 = "-v" ]] ; then
java -jar $gateway
else
java -Xms128m -Xmx512m -Dlog4j.configurationFile=$log4jfile -classpath $mysqljdbc:$commonsdaemon:$commonspool:$commonscollections:$msllogger:$gateway:$msjdbc:$asejdbc:$postgresqljdbc:$hive:$hanajdbc:. $mainclass CONFIG=$configfile $* &
sleep 1
fi
jgw.cfg 파일 수정
# Target database DATABASE=ASE # 해당 부분 수정 필요 # Datasource class name for target database # use with DATABASE=JDBC30 option. #DATASOURCE_CLASS_NAME=com.tmax.tibero.jdbc.ext.TbDataSource # XA datasource class name for target database # use with DATABASE=JDBC30 option. #XA_DATASOURCE_CLASS_NAME=com.tmax.tibero.jdbc.ext.TbXADataSource # Listener port LISTENER_PORT=9093 # Initial thread pool size INIT_POOL_SIZE=10 # Max thread pool size MAX_POOL_SIZE=100 # Max cursor cache size per thread MAX_CURSOR_CACHE_SIZE=100 # Gateway Encoding-"ASCII", "EUC-KR", "MSWIN949", "UTF-8", "UTF-16", "SHIFT-JIS" ENCODING=UTF-8 # Max length for Types.LONGVARCHAR MAX_LONGVARCHAR=4K # Max length for Types.LONGRAW MAX_LONGRAW=4K # Fetch size (num of rows) for target database (default:32) #TARGET_DB_FETCH_SIZE=32 # National character set type support (default:Y) #SUPPORTS_NATIONAL_CHARACTER_SET_TYPE=Y # Transaction isolation level of target database connection. # - Default: READ COMMITTED # -"READ COMMITTED", "READ UNCOMMITTED", "SERIALIZABLE", etc... #TRANSACTION_ISOLATION_LEVEL= # Validation query #VALIDATION_QUERY=SELECT 1 #VALIDATION_QUERY=SELECT 1 FROM DUAL WHERE 1=0 # Validation idle time. (milliseconds) # - Default: 0 (infinite) # - Minium value: 60000 (1 min) #VALIDATION_IDLE_TIME=120000 # MySQL JDBC Connection URL Format # - jdbc:mysql://[host][:port][/database][MYSQL_PROPERTY] # - Record MYSQL_PROPERTY field only # MYSQL_PROPERTY= # Response Buffering #MSSQL_RESPONSE_BUFFERING=ADAPTIVE # Select Method #MSSQL_SELECT_METHOD=DIRECT
설정 완료 후 gateway 실행
[tibero@ENT-ROCKY8 tbJavaGW]$ ./tbgw [tibero@ENT-ROCKY8 tbJavaGW]$ ------------------------------- Name : TmaxTibero JAVA GATEWAY Database: 3 Port : 9093 -------------------------------
Tibero tbdsn.tbr 파일 접속정보 수정
ASE=(
(GATEWAY=
(LISTENER=
(HOST=gateway 실행서버 ip)
(PORT=gateway 실행서버 port)
)
(TARGET=Sybase 접속정보 iP:master)
(TX_MODE=LOCAL) # Transaction 모드
)
)
ex)
ASE=(
(GATEWAY=
(LISTENER=
(HOST=localhost)
(PORT=9093)
)
(TARGET=192.168.242.189:master)
(TX_MODE=LOCAL)
)
)