Background Image
기타
2015.06.19 01:40

콘솔에서 마이그레이션 하기.

조회 수 13427 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부


마이그레이션 마법사 5단계에서 저장한 마이그레이션 스크립트를 클릭하고 툴바에서 마이그레이션 스크립트 > 내보내기를 클릭하면 해당 스크립트를 XML 파일로 출력할 수 있으며 SSH를 이용해 원격 서버로 내보낼 수도 있다.

img_001.jpg

 

마이그레이션 스크립트 내보내기 대화 상자에서는 내 PC에 저장하거나 SSH 를 경유해 원격 서버에 저장 할 수 있다.

img_002.jpg

 

 

큐브리드 FTP 웹사이트의 CUBRID_Tools/CUBRID_Migration_Toolkit 디렉터리(http://ftp.cubrid.org/CUBRID_Tools/CUBRID_Migration_Toolkit)에서 다음과 같은 마이그레이션 툴킷 콘솔 버전을 다운로드 할 수 있다.

 

CUBRID-Migration-Toolkit-console-2014-build-4597-linux.tar.gz

CUBRID-Migration-Toolkit-console-2014-build-4597-windows.gz

 

압축을 푼 후 migration.sh를 실행한다.

 

$ sh ./migration.sh

Thank you for using CUBRID Migration Toolkit(CMT) Console.

 

Usage in windows: migration.bat <utility-name> [options]

Usage in linux: migration.sh <utility-name> [options]

 

Available <utility-name> (Default is “start”):

    Start: Start a migration task.

    Log: Review a migration work’s log.

    Report: Review amigration work’s result.

    Script: Build a migration script with online source and default options.

 

Please visit http://www.cubrid.org  for more information.

 

마이그레이션 명령(start) 외에 마이그레이션이 끝난 후 생성되는 로그(log)나 보고서(report)를 보는 명령도 제공한다.  Script 명령을 이용하면 원본 데이터베이스에 연결해 스키마 정보를 마이그레이션 스크립트에 포함한 후 원본 데이터베이스를 연결할 수 없는 곳에 있는 마이그레이션 툴킷  GUI에서 이 마이그레이션 스크립트를 열어 매핑 작업을 할 수 있다물론, 작업 후에 다시 큐브리드 마이그레이션 툴킷 콘솔로 업로드해서 서버에서 마이그레이션을 시작할 수 있다.

리눅스 터미널에서 마이그레이션 하기 위해 여기서는 start 명령을 이용한다.  sh ./migration.sh start를 실행해보자.

 

$ sh ./migration.sh start

Thank you for using CUBRID Migration Toolkit(CMT) Console.

Please specify the migration script file:

 

마이그레이션 스크립트 내보내기로 출력한 스크립트 파일 경로를 입력하면 다음과 같이 원본 데이터베이스에 연결해서 마이그레이션을 시작한다.

Please specify the migration script file: migration-demodb.xml

Reading <migration-demodb.xml>

Reading source database schema …

Migration started at 2014-07-20 18:02:28

100%

Migration is finished.

Migration Report summary:

Time used: 00 00:00:07.516

     table: Exported[11];  Imported[11]

     view: Exported[0];  Imported[0]

     primary key: Exported[10];  Imported[10]

     foreign key: Exported[4];  Imported[4]

     index:  Exported[0];  Imported[0]

     sequence: Exported[2];  Imported[2]

     trigger: Exported[0];  Imported[0]

     function: Exported[0];  Imported[0]

     procedure: Exported[0];  Imported[0]

     record: Exported[19202];  Imported[19202]

 

진행률이 100%가 되고 간략한 마이그레이션 종료 보고서가 출력된다물론 자동화를 위해 다음의 파라미터를 지정하면 사용자의 입력을 기다리지 않고 바로 마이그레이션이 시작되게 할 수 있다.

Usage in Windows: migration.bat start [options] [migration script file]

Usage in Linux: migration.sh start [options] [migration script file]

 

Available options:

-s,      Configuration Name of source in db.conf.

     -t,      Configuration Name of target in db.conf.

     -sd,     Full name of source database's JDBC driver file.

     -td,     Full name of target database's JDBC driver file.

     -tp,     Path to save exported files if the configuration is setting to export source DB to files.

     -xml,    MySQL XML dump file.

     -mm,     Monitor mode.  The value should be one of [error, info, debug]

     -rm,     Report mode.  The value should be one of [error, info, debug]

     -do,     CMT only migrates data.  The value should be one of [yes, no]

 

, 다음과 같이 실행하도록 옵션을 추가하면 별도 입력 없이 마이그레이션을 시작할 수 있기 때문에 crontab  등에 지정하고 주기적으로 마이그레이션 해야 하는 경우에 유용하다.

sh ./migration.sh start migration-demodb.xml

 

그런데 마이그레이션 툴킷 GUI에서 마이그레이션 스크립트를 작성하면  JDBC 드라이버의 경로가 실제 마이그레이션 콘솔이 동작하는 서버와 다를 수 있다이런 경우에는 –sd, -td 옵션을 이용해 JDBC 드라이버를 직접 지정할 수 있다.

sh ./migration.sh start migration-demodb.xml  -sd  jdbc/ojdbc6.jar  -td  jdbc/JDBC-9.3.0.026-cubrid.jar

 

마이그레이션 완료 후 보고서를 보려면 {큐브리드 마이그레이션 툴킷 콘솔 설치 경로} /workspace//report에 있는 .mh 파일을 큐브리드 마이그레이션 툴킷 GUI에서 열어 볼 수 있다터미널에서 바로 보고 싶다면 다음과 같이 report 명령을 이용하면 된다.

 

sh ./migration.sh report

Thank you for using CUBRID Migration Toolkit(CMT) Console.

 

Usage in Windows: migration.bat report [options] [migration history file(*.mh)]

Usage in Linux: migration.sh report [options] [migration history file(*.mh)]

 

Available [options]:

    -l,    To show the latest migration report automatically.

 

Please visit http://www.cubrid.org for more information.

Available migration history file(s):

    1405846948752.mh

    1405847351180.mh

 

 

Available migration history file(s) 항목에서 마이그레이션이 2회 실행됐고 그 보고서가 저장 돼 있음을 알 수 있다다음과 같이 보고서 파일(*.mh)을 옵션으로 추가하면 결과 보고서를 볼 수 있다.

sh ./migration.sh report  1405846948752.mh

Thank you for using CUBRID Migration Toolkit(CMT) Console.

 

Reading migration history file: <1405846948752.mh>

 

[Overview]

    [table]

           Total:[11]

       Exported:[11]

       Imported:[11]

 

보고서 파일(*.mh) GUI 화면에서 보려면 툴바에서 마이그레이션 이력을 클릭한다. 마이그레이션 이력탭이 열리면 열기를 클릭하고 해당 .mh 파일을 더블클릭한다마이그레이션 이력 목록에 해당 보고서가 추가되면 이를 더블 클릭해 상세한 보고서를 확인 할 수 있다.

img_003.jpg

큐브리드 마이그레이션 툴킷이 없으면 데이터베이스를 마이그레이션 할 때 스키마 이전을 위해 DDL 구문을 일일이 작성하고 별도의 스크립트를 작성해 실행해야 한다물론, 데이터의 양이 많은 경우 JDBC를 경유해서 데이터를 추출하는 과정에서 많은 시간이 소요될 수 있으나, 큐브리드 마이그레이션 툴킷은 번거로운 작업을 하나의 도구에서 표준화하고 자동화 할 수 있다는 것에 의의가 있겠다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
21 Java JDBC를 사용한 다중화 구성 SELECT Query 부하 분산 가이드 file 윤준수 2017.03.30 3918
20 Java tomcat8.0(DBCP2)과 CUBRID 연동하기 손승일 2016.07.01 15525
19 Java CUBRID에서 Java AddBatch 사용 엄기호 2016.06.28 8339
18 Java CUBRID와 MyBATIS 빠르게 연동하기 file 김승훈 2015.05.07 19123
17 Java CUBRID와 Oracle의 Clob 타입 사용 방법 비교. seongjoon 2012.06.30 54547
16 Java SELECT ~ FOR UPDATE 대체 방법 손승일 2009.12.30 32366
15 Java CUBRID Java Stored Procedure와 DB Server Memory 관계 file 손승일 2009.10.31 40190
14 Java QuantumDB Eclipse Plugin을 사용하여 CUBRID연동하기 2 cubebridge 2009.10.06 28920
13 Java CUBRID JDBC에서 유니코드 사용하기 1 손승일 2009.08.15 27434
12 Java CUBRID Collection Data Type 사용하기 - JDBC 손승일 2009.08.15 24902
11 Java CUBRID GLO 사용하기 - JDBC 손승일 2009.08.15 23493
10 Java JavaSP SampleCode(Pivot기능) cubebridge 2009.07.28 27553
9 Java log4jdbc를 사용한 JDBC 로그 분석 시난 2009.07.02 36391
8 Java CUBRID에서 log4sql을 사용하자 정병주 2009.06.12 44302
7 Java jsp용 jdbc 샘플입니다. file 시난 2009.05.25 47606
6 Java iBATIS framework with CUBRID file 웁쓰 2009.05.19 54546
5 Java SQuirreL SQL Client에서 CUBRID 사용하기 3 Prototype 2009.04.18 34533
4 Java Power*Architect 에서 CUBRID 사용하기 Prototype 2009.04.18 23879
3 Java AquaDataStudio 에서 CUBRID 사용하기 Prototype 2009.04.18 23666
2 Java Spring framework 사용 예제 admin 2009.04.01 53119
Board Pagination Prev 1 2 Next
/ 2

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales