문서유형ㅣ기술정보
분야ㅣ관리/환경설정
적용제품버전ㅣT7, T6
문서번호ㅣTADTI126
개요
본 문서는 Tibero 데이터베이스에서 MySQL 데이터베이스로의 DB Link 설정 방법과 발생 가능한 에러에 대한 조치 방법을 안내합니다.
테스트 정보
- Tibero: Tibero 7 (DB 7.0 FS02) Build 261550
- MySQL: 9.0.1
방법
1. DB Link 설정 단계
1) gateway 파일 복사 / 압축풀기
cp $TB_HOME/client/bin/tbJavaGW.zip /home/tibero/.unzip $TB_HOME/client/bin/tbJavaGW.zip
2) profile에 환경변수 추가
export TBGW_HOME=/home/tibero/tbJavaGW
3) gateway config 파일 (jgw.cfg) 수정
vi $TBGW_HOME/jgw.cfg
[설정 예시]
# Target database DATABASE=MYSQL # Datasource class name for target database DATASOURCE_CLASS_NAME=com.mysql.cj.jdbc.MysqlDataSource # XA datasource class name for target database XA_DATASOURCE_CLASS_NAME=com.mysql.cj.jdbc.MysqlXADataSource # Listener port - 게이트웨이 리스너 포트 LISTENER_PORT=1234 # Gateway Encoding - mysql charset과 동일해야 함 ENCODING=UTF-8 # Transaction isolation level TRANSACTION_ISOLATION_LEVEL="READ COMMITTED" # MySQL JDBC Connection URL Format # - jdbc:mysql://[host][:port][/database][MYSQL_PROPERTY] MYSQL_PROPERTY=?PublicKeyRetrieval=true&useSSL=false&serverTimezone=Asia/Seoul
* 제약/참고 사항: MySQL JDBC Connector 버전별 설정
- 5 버전 사용 시:
DATASOURCE_CLASS_NAME=com.mysql.jdbc.jdbc2.optional.MysqlDataSource - 8 버전 이상:
DATASOURCE_CLASS_NAME=com.mysql.cj.jdbc.MysqlDataSource jgw.cfg상세 파라미터 설명은 Tibero 7 매뉴얼 참고
4) 게이트웨이 라이브러리 설정
- MySQL JDBC를
$TBGW_HOME/lib경로에 복사합니다. $TBGW_HOME/tbgw파일에서 JDBC 드라이버 이름을 반영합니다.
예: mysqljdbc → ./lib/mysql_jdbc_이름
5) gateway 실행
cd $TBGW_HOME./tbgw
6) MySQL 접속정보 (tbdsn.tbr) 설정
vi $TB_HOME/client/config/tbdsn.tbr
예시:
link=(
(GATEWAY=(LISTENER=(HOST=localhost)
(PORT=1234))
(TARGET=192.168.56.11:3306:jh_db)
(TX_MODE=GLOBAL))
)각 파라미터 설명은 Tibero 7 매뉴얼의 게이트웨이 프로세스 생성 방식을 참고합니다.
7) DBLINK 생성
create database link 링크명 connect to 'mysql유저명' identified by '패스워드' using 'alias';
예시:
create database link m_link connect to 'jh' identified by 'tibero' using 'link';
8) DBLINK 테스트
예시:
select * from employees@m_link;
2. 에러 발생 시 조치 방법
주의: 게이트웨이가 떠 있을 때 jgw.cfg 수정 시 반드시 재기동이 필요합니다.
1) TBR-130005 발생 (Time Zone 오류)
TBR-12130: Unable to connect to remote database. TBR-130005: Authentication failed - The server time zone value is unrecognized.
조치 방법: 아래처럼 jgw.cfg 수정합니다.
MYSQL_PROPERTY=?serverTimezone=Asia/Seoul
2) SSL 관련 Warning 발생
링크는 수행되나 SSL Warning 메시지가 나타납니다.
조치 방법:
MYSQL_PROPERTY=?PublicKeyRetrieval=true&useSSL=false
3. 게이트웨이 재기동 방법
- 게이트웨이 프로세스 kill (
ps -ef | grep tbgw→kill) - 재시작:
cd $TBGW_HOME./tbgw