E Xper DB DB2PG User Guide

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 14

eXperDB-DB2PG
사용자매뉴얼
제품 개요 .............................................................................................................................................................................. 3
제품 설치 .............................................................................................................................................................................. 4
DB2PG 사용법 .................................................................................................................................................................... 6
Config 설정 .......................................................................................................................................................................... 9
Custom Query.................................................................................................................................................................. 12
명령어 .................................................................................................................................................................................. 14
제품 개요
1.1. 개요
이기종 DBMS에서 PostgreSQL로의 DDL 변환 데이터 추출을 지원한다.
1.2. 적용대상
항목
상세
실행가능 OS
Linux, Windows
Source DBMS
Oracle, MySQL, MsSQL, Sybase ASE
Target DBMS
PostgreSQL
1.3. 필수사항
항목
상세
JAVA
JDK 1.7이상
Source DBMS
Sam(Sequential Access Method) File 형식으로 추출되므
파일이 정상적으 적재 있도록 충분한 여유
공간이 필요함
제품 설치
2.1. 설치
Linux, Windows 설치 가능하다.
2.2. Linux 설치
2.2.1. 디렉토리 구조
항목
디렉토리 파일
내용
DB2PG
db2pg/db2pg.config
Config 환경설정 파일
db2pg/db2pg.sh
실행 파일
db2pg/java
자바 디렉토리
db2pg/lib
라이브러리 디렉토리
db2pg/LICENSE
라이선스 파일
2.2.2. DB2PG 설치
1. Home Directory 이동
$ cd /home/
2. eXperDB-DB2PG.run 파일 복사
3. 권한 설정
$ chmod 755 db2pg.run
3. run 파일 실행
$ ./db2pg.run
4. DB2PG Directory 생성 확인
$ cd db2pg
2.3. Windows 설치
2.3.1. 디렉토리 구조
항목
디렉토리 파일명
내용
DB2PG
db2pg/db2pg.config
Config 환경설정 파일
db2pg/db2pg.bat
실행 파일
db2pg/lib
라이브러리 디렉토리
db2pg/LICENSE
라이선스 파일
2.3.2. DB2PG 설치
Windows Zip 압축 파일을 풀어준다.
DB2PG 사용법
3.1. DDL 추출 방법
3.1.1. db2pg.config 파일을 열어 소스DB정보를 입력한다.
SRC_HOST= XXX.XXX.XXX.XXX
SRC_USER=user
SRC_PASSWORD=password
SRC_DATABASE=test
SRC_SCHEMA=test
SRC_DB_TYPE=ORA
SRC_PORT=1521
3.1.2. DDL추출여부(SRC_DDL_EXPORT) TRUE 입력한다.
SRC_DDL_EXPORT=TRUE
3.1.3. DDL 생성 경로(OUTPUT_DIRECTORY) 입력한다.
OUTPUT_DIRECTORY=./db2pgtest
3.1.4. ./db2pg.sh 명령어를 입력하여 실행한다.
3.2. Data 추출 파일 저장 방법
3.2.1. db2pg.config 파일을 열어 소스DB정보를 입력한다.
SRC_HOST= XXX.XXX.XXX.XXX
SRC_USER=user
SRC_PASSWORD=password
SRC_DATABASE=test
SRC_SCHEMA=test
SRC_DB_TYPE=ORA
SRC_PORT=1521
3.2.2. 파일추출여부(FILE_WRITER_MODE) TRUE 입력한다.
FILE_WRITER_MODE=TRUE
3.2.3. 파일이 생성 경로(OUTPUT_DIRECTORY) 입력한다.
OUTPUT_DIRECTORY=./db2pgtest
3.2.4. ./db2pg.sh 명령어를 입력하여 실행한다.
3.3. DB to DB Migration 방법
3.3.1. db2pg.config 파일을 열어 소스DB정보를 입력한다.
SRC_HOST= XXX.XXX.XXX.XXX
SRC_USER=user
SRC_PASSWORD=password
SRC_DATABASE=test
SRC_SCHEMA=test
SRC_DB_TYPE=ORA
SRC_PORT=1521
3.3.2. 타겟DB정보를 입력한다.
TAR_HOST= XXX.XXX.XXX.XXX
TAR_USER=user
TAR_PASSWORD=password
TAR_DATABASE=test
TAR_SCHEMA=test
TAR_DB_TYPE=POG
TAR_PORT=5432
3.3.3. DB적재여부(DB_WRITER_MODE) TRUE 입력한다.
DB_WRITER_MODE= TRUE
3.3.4. ./db2pg.sh 명령어를 입력하여 실행한다.
3.4. 기타 옵션 설정 방법
아래 4.2 옵션 참조
Config 설정
4.1. db2pg.config
vi 에디터를 이용하여 db2pg.config 파일을 열어 필요한 옵션정보들을 Data
Type 맞게 입력 한다.
4.2. 옵션
항목
상세
기본값
Data Type
비고
SRC_EXPORT
Source DBMS 데이터
추출 수행 여부
FALSE
Boolean
PG_CONSTRAINT_EXTRACT
Target
Database(PostgreSQL)
PK, FK, INDEX 삭제, 생성
스크립트 생성 여부
FALSE
Boolean
SRC_DDL_EXPORT
Source DBMS 스키마
추출 수행 여부
FALSE
Boolean
SRC_HOST
Source DBMS 호스트명
또는 ip주소
String
SRC_USER
Source DBMS 접속 계정
String
SRC_PASSWORD
Source DBMS 접속 계정
패스워드
String
SRC_DATABASE
Source DBMS 접속
Database
String
SRC_SCHEMA
Source DBMS 접속
Schema
String
SRC_DB_TYPE
Source DBMS 타입
ORA
String
ORA(Oracle),
MSS(Mssql),
ASE(sybasease),
MYSQL(Mysql)
SRC_PORT
Source DBMS 접속 Port
1521
Integer
SRC_DB_CHARSET
Source DBMS JDBC
Connection Charset
String
euckr, utf8, ...
SRC_STATEMENT_FETCH_SIZE
Source DBMS JDBC
3000
Integer
통해 추출시 1 통신당
요청 row 개수
SRC_TABLE_SELECT_PARALLEL
Source DBMS 동시에
추출되는 table 개수
1
Integer
SRC_TABLE_COPY_SEGMENT_SIZE
Source DBMS 추출한
데이터를 Copy 구문으로
변경 Copy
구문에 수행될row 개수
10000
Integer
VERBOSE
stdout 주요 수행 내용
출력 여부
TRUE
Boolean
SRC_WHERE
Source table 추출
쿼리의 모든 where
동일한 조건일
사용가능
String
TABLE_ONLY
Source Database Catalog
table Type view,
table table 추출
사용
TRUE
Boolean
TRUNCATE
Copy구문 수행
Truncate Command
수행여부 설정
TRUE
Boolean
SRC_ALLOW_TABLES
추출 Table List
지정하는 옵션이며
테이블명 사이에
구분자를 입력해주어야
한다.
String
SRC_EXCLUDE_TABLES
추출에서 제외 Table
List 지정하는 옵션이며
테이블명 사이에
구분자를 입력해 주어야
한다.
String
SRC_ROWNUM
테이블에 추출할
rows limit.
-1
Integer
TAR_HOST
Target DBMS 호스트명
또는 ip주소
String
TAR_USER
Target DBMS 접속 계정
String
TAR_PASSWORD
Target DBMS 접속 계정
패스워드
String
TAR_DATABASE
Target DBMS 접속
Database
String
TAR_SCHEMA
Target DBMS 접속
Schema
String
TAR_PORT
Target DBMS 접속 Port
Integer
OUTPUT_DIRECTORY
Sam File, DDL
생성되는 경로 지정
String
FILE_CHARACTERSET
생성되는 File 인코딩
String
US-ASCII, UTF-
8, ISO-8859-
1, ...
SELECT_QUERIES_FILE
custom select query
수행하기 위한 query
정보가 있는queries.xml
file 전체 경로를
입력해주어야 한다.
String
SRC_LOB_FETCH_SIZE
LOB에서 사용되는 버퍼
크기
1024
Integer
단위 MiB
LOG_LEVEL
Logging 대한 LEVEL
지정 하는 옵션이다.
INFO
String
OFF, FATAL,
ERROR, WARN,
INFO,
DEBUG, TRACE,
ALL
SRC_IS_ASCII
Source DBMS ASCII
encoding일때 사용한다.
FALSE
Boolean
8859_1
Encoding
용함
DB_WRITER_MODE
DB 적재 수행 여부 설정
FALSE
Boolean
FILE_WRITER_MODE
DB 데이터를 파일로
할지 여부 설정
FALSE
Boolean
TAR_TABLE_ERR_CNT_EXIT
Target 테이블 에러 제한
row개수
0
Integer
Custom Query
5.1. 개요
사용자 정의 쿼리를 적용 있는 기능이다.
5.2. 사용방법
5.2.1. ./db2pg.sh -M 명령어를 실행한다.
5.2.2. querys.xml 파일이 생성 된다.
5.2.3. 속성에 맞게 실행할 쿼리를 입력한다.
5.2.4. db2pg.config 파일을 열어 SELECT_QUERIES_FILE 옵션에 queries.xml file
전체 경로를 입력한다. (, Config 옵션인 SRC_ALLOW_TABLES,
SRC_EXCLUDE_TABLES, SRC_WHERE 항목에 영향 받지 않는다.)
5.3. 속성
항목
상세
QUERYS
최상위 element 해당 element 하위에 다른
element 포함된다
QUERY
하나의 select query 나타낸다
NAME, SELECT element 하위 element이다.
NAME
query 이름이며 output file 이름과 동일하다
SELECT
실제로 실행될 SELECT 쿼리이다
5.4. queries.xml 예제(Oracle)
<QUERYS>
<QUERY>
<NAME>TEST</NAME>
<SELECT>
<![CDATA[
SELECT level AS id, ROUND(DBMS_RANDOM.VALUE(1, 10),0) as customer
FROM dual CONNECT BY level <= 3;
]]>
</SELECT>
</QUERY>
</QUERYS>
5.5. 예제 결과(Oracle)
SET client_encoding TO 'UTF8';
\set ON_ERROR_STOP OFF
\set ON_ERROR_ROLLBACK OFF
COPY "test"."test" ("id","customer") FROM STDIN;
1 3
2 4
3 3
\.
명령어
6.1. 명령어 실행
항목
명령어
실행
./db2pg.sh
Help
./db2pg.sh -help

Navigation menu