콘텐츠로 이동

4. CLI 모드 퀵 가이드#

이 장은 Migration Center를 처음 접하는 사용자들이 CLI 모드 Migration Center를 각 단계별로 사용할 수 있도록 간략한 지침을 제공한다.

단계별 지침#

사용자들은 아래 과정에 따라 CLI 모드로 쉽게 마이그레이션을 수행할 수 있다.

  1. 프로젝트 준비
  2. 데이터베이스 연결정보 및 프로젝트 등록
  3. 마이그레이션 옵션 설정
  4. 프로젝트 구축
  5. 프로젝트 조정
  6. 프로젝트 실행
  7. 프로젝트 검증

프로젝트 준비#

Migration Center를 수행하기 위해 원본/대상 데이터베이스 연결 정보와 프로젝트 등록은 필수 사항이다. 사용자 친화적인 GUI 모드에서 등록하기를 권장하지만, CLI 모드에서도 가능하다.

CLI 모드에서 데이터베이스 연결 정보 및 프로젝트를 등록 또는 제거하기 위해서는, 등록파일(register.xml)을 수정한 뒤 Migration Center에서 등록 작업을 명시적으로 수행해야 한다. 등록파일에 입력해야 하는 내용은 프로젝트 이름 및 해당 프로젝트에서 사용될 원본/대상 데이터베이스 연결 정보이며, 여러 개의 프로젝트를 한 번에 등록할 수 있다. 등록파일은 반드시 Migration Center가 설치된 디렉토리에 위치해야 한다. 자세한 수정 방법은 register.xml 파일 내부에 기록된 주석과 샘플을 참고한다.

데이터베이스 연결정보 및 프로젝트 등록#

% ./migcenter.sh register register.xml

등록파일(register.xml)에 기록된 원본/대상 데이터베이스 연결 정보 및 프로젝트를 Migration Center에 등록한다. 입력된 프로젝트 이름과 동일한 이름을 가진 기존 프로젝트가 없어야 하며, 원본/대상 데이터베이스 연결 정보를 이용한 접속 시도에 성공해야 한다. 등록 성공시 프로젝트 이름의 폴더가 생성되며, 원본/대상 데이터베이스 연결 정보는 Migration Center에 저장된다.

등록파일에 기록된 프로젝트 및 데이터베이스 연결 등록 중 하나라도 실패하면, 등록파일에 기록된 모든 프로젝트 및 데이터베이스 연결 등록이 자동으로 취소된다.

등록파일 이름은 register.xml 이외 다른 이름도 사용가능하다.

마이그레이션 옵션 설정#

프로젝트 등록에 성공했다면, 프로젝트 폴더에 options.xml 파일이 자동으로 생성된다. 사용자는 options.xml 파일을 직접 수정하여 CLI 모드에서 옵션을 조정할 수 있다. 옵션 상세 내용은 부록 '마이그레이션 옵션'을 참조한다.

프로젝트 구축#

% ./migcenter.sh build project_path

"구축" 단계를 수행하기 위해서 build 명령과 대상 프로젝트의 경로를 입력한다. 원본 데이터베이스 테이블들의 레코드 개수는 기본값인 Approximate Counting Method를 사용하여 정보를 수집한다.

프로젝트 조정#

% ./migcenter.sh reconcile project_path

"조정" 단계를 수행하기 위해서 reconcile 명령과 대상 프로젝트의 경로를 입력한다. CLI 모드에서는 "조정" 단계의 값을 변경할 수 없다. 예를 들어, 원본 데이터베이스 테이블들을 대상 데이터베이스의 특정 테이블스페이스에 임의로 할당할 수 없고, 대상 데이터베이스의 기본 테이블스페이스에만 할당된다.

원본 데이터베이스에서 데이터를 추출할 때, 특정 조건에 맞는 데이터만 선택적으로 추출하여 마이그레이션 할 수 있다. 자세한 내용은 5.Migration Center 내부 - "Select Editing 단계" 절을 참조한다.

프로젝트 실행#

% ./migcenter.sh run project_path

"실행" 단계를 수행하기 위해서 run 명령과 대상 프로젝트의 경로를 입력한다.

프로젝트 검증#

% ./migcenter.sh diff project_path

"검증" 단계에서는 "실행" 단계에서 이관된 데이터가 올바르게 이관되었는지 검사하기 위해 diff 명령과 대상 프로젝트의 경로를 입력한다.

% ./migcenter.sh filesync project_path

diff 명령을 통해 원본과 대상 데이터베이스간 다른 데이터가 발견되었다면 "filesync" 기능을 사용해 일치시킬 수 있다.