문서유형ㅣ기술정보
분야ㅣ 인터페이스/연동
적용제품버전ㅣ 7FS02PS
문서번호ㅣ TIITI002
개요
Gateway는 Tibero 서버에서 Oracle 서버와의 데이터베이스 연결을 중계하는 중요한 역할을 하며,$TBGW_HOME 환경 변수를 기준으로 설정 파일을 읽고 로그 파일을 기록합니다. 이 문서에서는 Gateway 정보 및 수행 프로세스에 대해 안내합니다.
방법
$TBGW_HOME 디렉토리 구성
$TBGW_HOME +-- <DBMS Vender명> |-- config // gateway 설정 파일 생성 위치 |-- tbgw.cfg |-- log // gateway와 관련된 로그 파일 생성 위치 |-- Log File
gateway 방식
구분 | Local 방식 | LISTENER 방식 |
|---|---|---|
적용 대상 | Tibero와 Oracle이 동일 서버에 존재 (UNIX 계열만 가능) | Tibero와 Oracle이 다른 서버에 존재 (UNIX, WINDOW) |
특징 | - Gateway 미리 기동 불필요 - 세션 연결 시마다 Gateway 프로세스 생성 - 세션 종료 시 프로세스 자동 종료 | - Gateway를 사전에 수동 기동 필요 - Multi-Thread 방식으로 여러 요청 처리 - Listener를 별도 서버에 구성 필요 |
Gateway character set 관련 옵션
옵션명 | 위치 | 설명 |
|---|---|---|
CHARACTER_SET | tbgw.cfg | - tbgw.cfg 파일에 명시적 설정 없으면 TB_NLS_LANG 참조 - TB_NLS_LANG도 없으면 Tibero 기본 Charset 사용 (Tibero6: MSWIN949 / Tibero7: UTF8) |
SKIP_CHAR_CONV | tbgw.cfg | Y : Oracle로부터 데이터 전달 시 TB_NLS_LANG 포맷 변환 후 Tibero에 전달 N : Tibero 서버의 캐릭터 셋으로 Oracle 서버에 데이터 요청 |
BYTES_CHARSET | tbdsnr.tbr | - Java Gateway 전용 - BYTES_CHARSET=Oracle 캐릭터 셋 선언 시 Tibero와 Oracle의 캐릭터 셋이 달라도 Gateway 인코딩과 Tibero 서버 캐릭터 셋과 무관하게 Oracle 캐릭터셋 문자열로 처리하여 Tibero에서 확인 가능 |
_ALLOW_DIFF_CHARSET_INSTANCE | $TB_SID.tip | - Gateway와 Tibero 인스턴스의 Charset이 달라도CTAS 정상 수행 허용 (Y/N) |
DBMS 밴더별 Gateway 정보
아래 표는 Tibero에서 데이터베이스 링크 기능을 지원하고 있는 다른 DBMS의 종류와 Gateway 바이너리명 입니다.

gateway 수행 프로세스
- tbsql → Gateway : Tibero DB 클라이언트(tbsql)가 Gateway로 요청 전달
- Gateway → oracle : Gateway가 Oracle로 질의 전달 후 결과 수신
[tbsql] <--> [gateway] <--> [oracle] [8629] <--> [ 9999 ] <--> [ 1521 ]
Gateway 통신 흐름
- Tibero 서버에서 다른 DBMS에게 요청한 질의를 Gateway에 전달
- Gateway에서 요청한 질의를 원격지 DB 쿼리로 변경 (Oracle JDBC)
Gateway는 Target DBMS로 연결하여 Tibero 서버로부터 전달 받은 질의를 수행 요청 - Target DB는 요청한 질의에 대한 결과를 Gateway에 전달
- Gateway에서 응답 받은 데이터를 요청 DB의 포맷으로 변경하여 Tibero에 전달

참고
에러 발생 시 참고할 수 있는 사항 입니다.
오류 코드 발생 원인 대처 방법 TBR-2131: Generic I/O error. gateway 프로세스 종료 Gateway 재기동 필요 (gw4orcl) TBR-130092:(ORA-12541)TNS:no listener oracle 리스너가 종료되었거나연결 불가 Oracle 리스너 상태 확인 및 재기동