Skip to end of metadata
Go to start of metadata

 

 

개요


Migration Center는 DBMS 사이에 일반적으로 호환되는 DBMS Object와 Data를 직접 또는 간접적으로 복사하는 DBMS Migration 도구입니다.

㈜알티베이스에서 제공하는 Migration Center는 타 DB에서 Altibase로, Altibase에서 Oracle DB로 Object 및 Data 이관을 도와 줍니다.

Migration Center는 사용자가 GUI 모드에서 마우스 클릭만으로도 DB Migration 작업을 수행할 수 있게 도와 주며, 명령어 인터페이스(CLI) 모드도 지원합니다.

 

본 문서의 테스트 환경은 다음과 같다.

  • Migration Center 7.12

 

 

Icon

이 문서와 관련된 오류 및 개선사항은 기술지원포털 또는 기술지원센터로 문의주시기 바랍니다.

Icon

이 문서는 정보 제공을 목적으로 제공되며, 사전에 예고 없이 변경될 수 있습니다. 이 문서는 오류가 있을 수 있으며, 상업적 또는 특정 목적에 부합하는 명시적, 묵시적인 책임이 일절 없습니다.

이 문서에 포함된 Altibase 제품의 특징이나 기능의 개발, 발표 등의 시기는 Altibase 재량입니다.

Altibase는 이 문서에 대하여 관련된 특허권, 상표권, 저작권 또는 기타 지적 재산권을 보유할 수 있습니다.

 

Migration Center 이용 시 이점


Migration Center를 이용하면 다음의 이점이 있다.

 

  1. 원본 DB Object들을 대상 DB로 쉽게 Migration 할 수 있다.
  2. JDBC를 사용해서 원본 DB의 Data를 Altibase로 바로 복사할 수 있다.
  3. Data를 외부 파일로 내보내어(Export) Altibase DB의 iLoader로 가져올(Import) 수 있다.
  4. Migration 과정을 단축시킬 수 있는 병렬 수행 옵션을 제공한다.
  5. 자동으로 여러 쓰레드 간의 Data Migration 부하에 대한 균형이 조정 가능하다.
  6. 쓰레드들이 처리할 Data를 수동으로 분할할 수 있는 방법도 가능하다.
  7. 서로 다른 DB 간에 다른 Data Type들의 Data Type Mapping을 제공한다.
  8. Data Type Mapping의 유연성을 위하여 사용자 정의 데이터 타입 맵핑 뿐만 아니라 기본 타입 맵핑도 지원한다.
  9. GUI 모드 뿐만 아니라 CLI 모드도 제공한다.
  10. DB Object Migration을 위한 DDL SQL문을 사용자가 수정할 수 있는 기능을 제공한다.

 

요구 사항


Migration Center를 사용하기 위한 요구 사항에 대하여 기술한다.

 

1. 시스템 요구 사항

구문설명
H/W 요구 사항GUI 모드
•CPU : 800MHz 이상
•Memory : 512MB 이상
•Disk : 150MB 이상 여유 공간
•화면 해상도 : 1024 * 768 화소 이상
CLI 모드
•CPU : 800MHz 이상
•Memory : 512MB 이상
•Disk : 150MB 이상의 여유 공간
S/W 요구 사항
•Oracl 또는 IBM Java 8 이상의 JRE

 

2. 호환 가능한 DBMS

대상 DB원본 DB
Altibase DB V6.5.1 이상
  • Altibase DB V 4.3.9 이상
  • Oracle V 9i ~ 11g
  • MS-SQL V 2005 ~ 2012
  • MySQL V 5.0 ~ 5.7
  • Informix V 11.50
  • TimesTen V7.0, 11.2
  • CUBRID V8.4.1. ~ 9.3.5(ISO-8859, UTF-8 charset)
  • Tibero V4sp1 ~ 6.0
  • PostgreSQL: 9.5.3
ORACLE 10g ~ 11g
  • Altibase DB V 4.3.9 이상

 

 

JDBC 드라이버


Migration Center는 DB 접속을 위해 JDBC 드라이버를 사용하므로 원본 DB와 대상 DB에 알맞은 JDBC 드라이버를 준비하는 것이 중요하다.

사용자 편의를 위해 일부 DB에 한해 JDBC  드라이버를 일부 지원한다.

MS-SQL, MySQL, Informix, TimesTen은 법적인 문제로 사용자가 직접 대상 DB 및 원본 DB에 대한 JDBC 드라이버를 찾아야 한다.

TimesTen DB는 Type 2 드라이버만 지원하기 때문에 반드시 TimesTen Client Package가 설치 된 장비에서 이관을 수행하여야 한다.

 

JDBC 드라이버 다운로드 URL


Oracle JDBC 드라이버는 Migration Center에 포함되어 배포 되며, MS-SQL 2005는 Microsoft Support Lifecycle(MSL) 정책에 따라 지원하지 않으며, 다운로드 URL도 제공하지 않는다. 따라서 고객이 사용하는 MS-SQL 제품 내 포함되어 있는 JDBC 드라이버를 사용하여야 한다.

데이터베이스JDBC Download URL비고
Tiberohttps://technet.tmaxsoft.com/ 
CUBRIDhttp://www.cubrid.org/?mid=downloads&item=jdbc_driver 
TimesTenhttp://www.oracle.com/technetwork/database/database-technologies/timesten/downloads/index.html 
Infoemixhttp://www14.software.ibm.com/webapp/download/search.jsp?go=y&rs=ifxjdbc 
MySQLhttp://dev.mysql.com/downloads/connector/j/ 
MS-SQL

Download Microsoft JDBC Driver for SQL Server:

https://docs.microsoft.com/en-us/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-2017

 

Microsoft JDBC Driver for SQL Server Support Matrix:

https://docs.microsoft.com/en-us/sql/connect/jdbc/microsoft-jdbc-driver-for-sql-server-support-matrix?view=sql-server-2017

• MS-SQL 2008, 2008 SP1, 2012 JDBC 드라이버는 다운로드 URL에서 받으면 된다.
• Migration Center 에서 요구하는 JDBC 6.0, JRE 8 버전 사용을 권장
• MS-SQL JDBC 드라이버는 JRE 7이상은 요구하기 때문에 Linux에서는 JAVA_HOME 환경 변수의 값을 JRE 7 이상 경로로 설정 필요
• JDBC 6.0 외의 JDBC 드라이버 버전을 사용하고자 할 때 SQL Server Support Matrix에서 호환 JRE를 사용한다.
PostgreSQL

https://jdbc.postgresql.org/download/

 

 

Migration Center 이용 시 주의 사항


Migration Center 이용 시 다음의 주의 사항을 확인 하여야 한다.

1. Migration Center는 원본 DB 및 대상 DB 간 1:1 매핑으로 이관을 진행한다.

  • 원본 DB의 DB 구성 요소를 추출한다.

  • 원본 DB에서 추출한 구성 요소는 이관 대상 DB User, Tablespace, Data 용량 등을 확보한다.
  • 추출한 원본 DB의 구성 요소를 대상 DB에 적용한다.
  • 성능관련 이슈로 Migration 시 이관 대상 Table을 Memory Table로 구성을 하여 Data 용량에 맞게 물리 메모리 및 디스크를 확보하여야 한다.

2. LOB Data Type의 컬럼이 NOT NULL 제약 조건이 있으면 이관되지 않는다.

3. 원본 DB 및 대상 DB의 Character Set, National Character Set은 동일 문자셋으로 구성하는 것을 권고한다.

4. 대량의 Data 이관 시 Migration Center GUI 모드에서 환경 구성 후 Build, Reconcile 단계까지 진행하고, 성능을 위해 CLI 모드에서 RUN을 수행하면 성능에 이점이 있다.

5. 원본 DB 접속 시 DB User가 여러개의 DB(스키마)로 구성되어 있으면 Migration Center는 원본 DB에 접속을 못한다.

    다중 DB(스키마) 구조이면 고객에게 협조를 구해 DB User, DB(스키마)를 1:1 매핑으로 변경하는 것이 좋으며 구성 변경이 되지 않는다면 Migration을 수동으로 진행하여야 한다.

6. 원본 DB가 Oracle에 한해 PSM까지 변환을 하며, Tibero는 PSM 변경 없이 이관을 진행한다.

    그외 DB는 PSM을 이관하지 않고 정보만 수집하여 수동으로 변경을 하여야 한다.

 

 

시작하기


Migration Center 다운로드, 설치 및 제거하는 방법을 소개한다.

 

설치 및 제거


 

1. Migration Conter Download

    다운로드 URL : http://support.altibase.com/kr/product

2. 설치 및 제거

    설치 : 다운로드 받은 Migration Center를 임의의 디렉토리에 압축을 푼다.

    제거 : Migration Center 디렉토리를 삭제 하면 됨

3. 실행

    설치 된 디렉토리에서 migcenter.bat 실행으로 Migration Center를 수행할 수 있다.

    Linux에서의 실행은 migcenter.sh로 수행할 수 있다.

 

Migration Center 이해하기


Migration Center에서 사용하는 용어 및 단계 구성을 설명한다.

 

용어


구분설명
프로젝트
  • Migration Center 프로젝트는 Migration의 모든 면을 기술하는 기본 작업 단위이다.
  • 프로젝트는 무엇을 Migration 할 지, 어디에서 어디로 Migration 할 지(즉, 어떤 종류의 데이터베이스 또는 데이터 파일), 그리고 데이터베이스 객체와 테이블 데이터를 어떻게 Migration 할 지를 포함한다.

 

기본 개념


Migration을 수행하는 전반적인 과정을 준비(Prepare), 구축(Build), 조정(Reconcile), 실행(Run) 및 검증(Data Validation) 다섯 단계로 구성한다.

구분설명
준비(Prepare)
  • 준비 단계는 실제 Migration 프로젝트에 대한 암묵적인 단계이다.
  • 준비 단계의 최종 상태는 모든 데이터베이스 연결이 설정된 프로젝트가 열려 있는 것이다.
구축(Build)
  • 구축 단계는 원본 및 대상 데이터베이스의 현재 상태에 대한 초기 조사를 수행한다.
  • 데이터베이스와의 연결을 통해 원본 및 대상 데이터베이스의 데이터베이스 객체에 관한 정보를 가져오고, 이 정보를 프로젝트 디렉터리에 저장한다.
  • 이렇게 수집된 정보가 다른 단계에서 사용되기 때문에, 여기에는 가장 최신의 상태가 반영되어야 한다.
  • 실행 단계 전에 원본 데이터베이스에서 어떤 메타 정보가 변경된다면, 변경 사항들까지 통합하기 위해 구축에서 실행 단계까지 모두 재 수행 되어야 한다.
조정(Reconcile)
  • 조정 단계는 현재 상태에 대해 완벽한 마이그레이션 계획을 구성한다.
  • 원본 및 대상 데이터베이스 시스템 간의 데이터 타입 및 테이블 스페이스 등의 차이를 조정하는 것이 대부분이다.
  • 사용자는 원본 데이터베이스로부터 데이터 추출시에 사용할 SELECT문과 대상 데이터베이스에 실행할 DDL문을 편집할 수 있다.
  • 마이그레이션 옵션에 변경이 가해지면 이 단계부터 재 수행 된다.
실행(Run)
  • 실행 단계는 조정 단계에서 도출된 계획을 실행한다.
  • 이 단계에서 직접 또는 간접적으로 스키마와 데이터가 마이그레이션 된다.
  • 마이그레이션 옵션에서 Migration Type를 DB to DB로 설정했다면, Migration Center는 대상 데이터베이스에 데이터베이스 객체를 생성한다(스키마 마이그레이션). 그 다음에 원본 데이터베이스에서 대상 데이터베이스로 데이터를 복사한다(데이터 마이그레이션).
  • 마이그레이션 옵션에서 Migration Type를 DB to File로 설정했다면, 마이그레이션 하는 동안 SQL 스크립트 파일이 생성된다. 그러나 기본 마이그레이션 과정은 동일하다.
검증(Data Validation)
  • 마이그레이션 옵션에서 Migration Type를 DB to File로 설정했다면, 마이그레이션 하는 동안 SQL 스크립트 파일이 생성된다. 그러나 기본 마이그레이션 과정은 동일하다.
  • 구축 단계를 Build User로 수행했다면 Primary Key가 있는 모든 테이블을 대상으로 데이터의 일치 여부를 검사한다.
  • 구축 단계를 Build Table로 수행했다면 마이그레이션한 테이블 중 Primary Key가 있는 테이블을 대상으로 데이터의 일치 여부를 검사한다.
  • 검증 과정에서 원본과 다른 데이터는 CSV 형식으로 저장된다.
  • 차이가 나는 데이터는 FILESYNC 메뉴 또는 명령으로 대상 데이터베이스에 반영할 수 있다.
  • 또한 검증 단계에서 소요되는 시간을 줄이기 위해, 기본적으로 데이터 샘플링 기능이 사용된다.
  • 만약 샘플링 데이터 대신에 전체 데이터를 검증하고 싶으면 Migration Options의 Data Validation Options 항목들 중 Data Sampling을 No로 변경하면 된다.

 

 

인터페이스


Migration Center에서 제공하는 사용자 인터페이스인 GUI 모드와 CLI 모드에 대해 간략히 설명한다.

각 모드 별 상세 사용법은 'GUI 모드 퀵 가이드' 및 'CLI 모드 퀵 가이드'에서 좀 더 상세한 설명을 제공한다.

 

Migration Center 시작


Migration Center를 시작하기 위해서는 다운로드 받은 MigrationCenter7.12.zip 파일을 임의의 폴더에 압축을 해제 하면 됩니다.

화면수행 방법

① Migration Center 디랙토리에서 migcenter.bat 수행

② Linux OS에서 migcenter.sh 수행

 

사용자 인터페이스


Migration Center GUI 모드의 화면 구성은 4개의 창으로 이루어 진다.

메뉴 및 아이콘


Migration Center에서 사용하는 메뉴 및 아이콘에 대해 설명한다.

메뉴 구분설명
Database > Add Database Connection
  • Migration을 진행 할 원본 DBMS 및 대상 DBMS를 등록 한다.
  • Migration Center 상단 좌측 단축 아이콘이 있다.
Database > Database Connection List
  • 등록한 DBMS에 대한 List를 보여준다.
Database > Exit
  • Migration Center를 종료 한다.
Project > Create Project
  • Object 및 Data 이관을 하기 위한 신규 프로젝트를 생성한다.
  • Migration Center 좌측 상단 단축 아이콘이 있다.
Project > Open Project
  • 기존에 생성한 프로젝트를 불려온다.
Project > Connect
  • 프로젝트에서 사용하는 DB에 접속한다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Connect 선택도 동일 기능
Project > Disconnect
  • 프로젝트에서 사용하는 DB의 연결을 종료한다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Disconnect 선택도 동일 기능
Project > Close
  • 프로젝트를 종료한다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Close 선택도 동일 기능
Migration > Build User
  • DB User의 모든 Object 및 Data를 이관한다.
  • Migration Center 상단 좌측 단축 아이콘이 있다.
  • 단축 아이콘에서 Build User를 선택
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Build User 선택도 동일 기능
Migration > Build Table
  • DB User의 모든 Table 및 Data를 이관한다.
  • Migration Center 상단 좌측 단축 아이콘이 있다.
  • 단축 아이콘에서 Build Table를 선택
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Build User 선택도 동일 기능
Migration > Reconcile
  • Build 단계 완료 후 활성화 된다.
  • 이관 대상에 대한 Object를 조정 한다.
  • Migration Center 상단 좌측 단축 아이콘이 있다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Reconciles 선택도 동일 기능
Migration > Run
  • Reconcile 단계 완료 후 활성화 된다.
  • Migration을 진행한다.
  • Migration Center 상단 좌측 단축 아이콘이 있다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Run 선택도 동일 기능
Migration > Data Validation
  • Reconcile 단계 완료 후 활성화 된다.
  • 이관 대상 Data에 대한 검증을 진행한다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Data Validation 선택도 동일 기능
Migration > Migration Options
  • Migration 프로젝트에서 사용할 기본 옵션을 구성한다.
  • Migration Options을 변경하면 Reconcile 단계부터 다시 시작해야 한다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Migration Options 선택도 동일 기능
Report > Build Report
  • 프로젝트 Build 완료 후 활성화 된다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Build Report 선택도 동일 기능
Report > Reconcile Report
  • 프로젝트 Reconcile 완료 후 활성화 된다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Reconcile Report 선택도 동일 기능
Report > Run Report
  • 프로젝트 Run 완료 후 활성화 된다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Reconcile Report 선택도 동일 기능
Report > Data Validation Report
  • 프로젝트 Data Validation 완료 후 활성화 된다.
  • 프로젝트 창 프로젝트 선택 후 마우스 오른쪽 클릭 후 Data Validation Report 선택도 동일 기능

 

Migration Center Utility


구분설명화면

PSM Converter for File

  • PSM Converter for File은 오라클의 PL/SQL을 Altibase PSM으로 변환한다.
  • 이 도구는 오라클 PL/SQL 구문이 들어있는 SQL 파일을 읽어서 Altibase PSM으로 전환한 다음, 결과를 미리 정의한 SQL 파일에 기록한다.
  • 이 파일은 HTML 형식의 보고서 파일과 함께 제공된다. 이 도구의 기능은 내부적으로 마이그레이션 조정 단계에서의 PSM Converter와 동일하다.
  • PSM Converter for File는 메인 메뉴의 Tools -> PSM Converter for File로 실행할 수 있다.


Generate Migration Error Report
  • Generate Migration Error Report는 Migration Center에서 발생하는 문제를 보고하는 유틸리티이다.
  • 프로젝트를 연 후에, 이 도구를 실행하면 로그 파일, 리비전 번호 같은 문제 추적 정보를 수집하여 zip 파일을 생성한다.
  • 사용자는 이 zip 파일을 첨부하여 Altibase 고객서비스포털에 고객 등록 정보와 함께 보내기만 하면 된다.
  • 이 툴은 메인 메뉴의 Tools -> Generate Migration Error Report로 실행할 수 있다.

 

 

GUI 사용자 가이드


GUI 모드에서 Migration 진행 내용에 대하여 기술한다.

 

Migration 진행 단계


GUI 모드로 진행하는 Migration Center는 다음과 같은 순서로 Migration을 진행한다.

  1. Migration Center 시작
  2. 프로젝트 준비
    - 원본 및 대상 DB 연결 등록
    - 프로젝트 생성
    - 프로젝트 열기
    - 원본 및 대상 DB 연결
    - Migration Options 설정
  3. 프로젝트 구축
  4. 프로젝트 조정
  5. 프로젝트 실행
  6. 프로젝트 검증

 

DBMS 연결 등록


원본 DBMS 및 대상 DBMS를 등록 한다.

DBMS를 등록하는 방법으로는 “메뉴 > Database > Add Database Connection”와 Add Database Connection 아이콘을 클릭하면 DBMS 정보 입력 창이 나온다.

구분화면
메뉴 > Database > Add Database Connection
Add Database Connection 아이콘

 

DBMS 정보 입력


DBMS 등록을 하기 위한 정보를 입력 등록한다.

등록 가능 DBMS는 Oracle, Altibase, MS-SQL, MySQL, Informix, TeimesTen, CUBRID, Tibero, PostgreSQL가 가능하다.

DBMS 구분화면항목 설명
Oracle

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ Oracle 접속 SID 명

⑧ 연결 IP 프로토콜 (IPv4, IPv6 중 선택)

 ⑨ DB 접속 Test

⑩ DB 연결 등록

⑪ 등록 취소

 

Oracle JDBC 드라이버는 Migration Center에서 제공하는 기본 드라이버를 사용한다.

Altibase

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ JDBC 드라이버 선택 (File 버튼 클릭)

⑧ Altibase DB Name

⑨ Client에서 사용하는 문자셋(옵션)

⑩ 연결 IP 프로토콜 (IPv4, IPv6 중 선택)

⑪ 접속 JDBC 드라이버 프로퍼티(옵션)

⑫ DB 접속 Test

⑬ DB 연결 등록

⑭ 등록 취소

MS-SQL

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ JDBC 드라이버 선택 (File 버튼 클릭)

⑧ MS-SQL DB Name

⑨ 연결 IP 프로토콜 (IPv4, IPv6 중 선택)

⑩ 접속 JDBC 드라이버 프로퍼티(옵션)

⑪ DB 접속 Test

⑫ DB 연결 등록

⑬ 등록 취소

MySQL

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ JDBC 드라이버 선택 (File 버튼 클릭)

⑧ MySQL DB Name

⑨ 연결 IP 프로토콜 (IPv4, IPv6 중 선택)

⑩ 접속 JDBC 드라이버 프로퍼티(옵션)

⑪ DB 접속 Test

⑫ DB 연결 등록

⑬ 등록 취소

Imformix

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ JDBC 드라이버 선택 (File 버튼 클릭)

⑧ Informix DB Name

⑨ Informix 서버 이름

 ⑩ 연결 IP 프로토콜 (IPv4, IPv6 중 선택)

⑪ 접속 JDBC 드라이버 프로퍼티(옵션)

⑫ DB 접속 Test

⑬ DB 연결 등록

⑭ 등록 취소

TimesTen

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ 접속 Type 선택 (client, direct)

⑧ JDBC 드라이버 선택 (File 버튼 클릭)

⑨ 서버의 DSN 정보 

⑩ 연결 IP 프로토콜 (IPv4, IPv6 중 선택)

⑪ 접속 JDBC 드라이버 프로퍼티(옵션)

⑫ DB 접속 Test

⑬ DB 연결 등록

⑭ 등록 취소

CUBRID

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ JDBC 드라이버 선택 (File 버튼 클릭)

⑧ CUBRID DB Name 

⑨ 접속 JDBC 드라이버 프로퍼티(옵션)

⑩ DB 접속 Test

⑪ DB 연결 등록

⑫ 등록 취소

Tibero

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ JDBC 드라이버 선택 (File 버튼 클릭)

⑧ Tibero DB Name 

⑨ DB 접속 Test

⑩ DB 연결 등록

⑪ 등록 취소

PostgerSQL

① DB 종류 선택

② DB 연결이름

③ DB 서버 접속 IP

④ DB 접속 포트

⑤ 이관 DB User 명

⑥ DB User 비밀번호

⑦ JDBC 드라이버 선택 (File 버튼 클릭)

⑧ DB Name 입력

⑨ DB Schema 입력

⑩ 연결 IP 프로토콜 (IPv4, IPv6 중 선택)

⑪ 접속 JDBC 드라이버 프로퍼티(옵션)

⑫DB 접속 Test

⑬ DB 연결 등록

⑭ 등록 취소

 

DBMS 등록 리스트


Migration 하기 위해 등록 한 DBMS 리스트를 확인 할 수 있습니다.

구분화면설명
메뉴 > Database > Database Connection List 
등록 Database List 확인
① 새로운 DBMS를 등록
② 선택한 DBMS를 복사
③ 선택한 DBMS의 입력 정보 변경
④ 선택한 DBMS 삭제
⑤ List 창 닫기

 

프로젝트 생성


Migration Center에서 Object 및 Data를 이관하기 위해서는 프로젝트가 생성되어야 한다.

프로젝트를 생성하는 방법으로는 "메뉴 > Project > Create project"와 Create Project 아이콘을 클릭하면 프로젝트 생성 입력 창이 나온다.

구분주 화면생성 화면
메뉴 > Project > Create Project

① 프로젝트 명

② 프로젝트 생성 위치

    (기본 Migreation Center의 projects 폴더에 생성됨)

③ 원본 DBMS 선택

④ 대상 DBMS 선택

⑤ 프로젝트 생성

⑥ 프로젝트 취소

Create Project 아이콘

 

프로젝트 열기


생성된 프로젝트를 재 사용하기 위하여 프로젝트를 열수 있습니다.

기존 프로젝트를 열기 위한 방법으로는 "메뉴 > Project > Open Project"를 클릭하면 프로젝트 선택 창이 나온다.

Migration Center는 하나의 프로젝트만 열어 이관이 가능하다.

구분화면프로젝트 선택 화면
메뉴 > Project > Open Project

① 생성 된 프로젝트 선택

② 프로젝트 열기

③ 프로젝트 열기 취소

 

프로젝트 DB 연결


Object 및 Data 이관을 하기 위해서는 프로젝트를 열어 DB 연결을 하여야 한다.

프로젝트 DB 연결은 '메뉴 > Project > Connect"와 GUI 인터페이스의 프로젝트 창의 프로젝트를 마우스 오른쪽 클릭하여 Connect를 클릭하면 된다.

구분주 화면생성 화면
메뉴 > Project > Connect

① 프로젝트 창에서 DB 연결 상태로 변경

② 정보창의 Prepare 단계에서 Build 단계로 변경됨

③ 전체 DB 연결 성공 로그가 나옴

프젝트 창

 

Migration Options


Migration Option은 Migration을 진행하는데 영향을 미치는 기본적인 환경 설정이다. 기본 DB to DB, DB to File Migration Type이 있다.

Migration Option은 "메뉴 > Migration > Migration Options"와 GUI 인터페이스의 프로젝트 창의 프로젝트를 마우스 오른쪽 클릭하여 Migration Options를 클릭하면 된다.

구분주 화면생성 화면
메뉴 > Migration > Migration Options

프로젝트

 

DB to DB


원본 DB의 객체와 테이블의 Data가 대상 DB로 직접 Migration 된다.

DB to DB 화면설명





                                      
Execution Thread
  • 데이터 마이그레이션 실행 시 수행할 최대 쓰레드 개수를 설정한다.
  • 기본 설정은 마이그레이션 센터가 실행된 시스템의 논리 CPU 개수 * 3이다.
  • 설정 값 범위는 1 ~ 논리 CPU 개수 * 3을 권장한다.
Migration Target
  • 마이그레이션 대상을 선택한다.
    - Object & Data : 데이터베이스 객체 및 테이블 데이터를 이관한다.
    - Object : 데이터베이스 객체만, 나중에 Data는 따로 이관을 진행하여야 한다
Object Options 
Foreign Key Migration
  • 마이그레이션 대상에 외래 키 제약 조건 포함 여부를 설정한다.
  • 기본 설정은 No이다.
PSM Migration
  • 마이그레이션 대상에 PSM 객체(저장 프로시저, 저장 함수, Materialized View, 뷰, 타입 세트 및 트리거) 포함 여부를 설정한다.
  • 기본 설정은 Yes이다.
Drop Existing Objects
  • 마이그레이션 수행 전 데이터베이스 객체 재생성 여부를 설정한다.
  • Yes는 대상 데이터베이스에서 마이그레이션 대상 객체를 삭제(Drop)하고 생성(Create)한다.
  • No는 데이터베이스 객체 삭제 과정 없이 마이그레이션을 수행한다.
  • 기본 설정은 No이다.
Keep Partition Table
  • 파티션드 테이블 유지 여부를 설정한다.
  • Yes는 변환 가능한 경우 원본 DBMS와 동일한 파티션드 테이블을 생성한다.
  • 이 경우 사용자는 조정(Reconcile) 단계 중 5. Partitioned Table Conversion에서 파티션드 테이블 변환에 필요한 추가 작업을 진행해야 한다.
  • No는 논파티션드 테이블로 변경하여 생성한다.
  • 기본 설정은 No이다.
Use Double-quoted Identifier
  • 데이터베이스 객체 이름에 큰 따옴표 사용 여부를 설정한다.
  • 기본 설정은 No이다.
Remove FORCE from View DDL
  • 뷰 생성 구문에서 'FORCE' 키워드 삭제 여부를 설정한다.
  • 기본 설정은 Yes이다.
Postfix for reserved word
  • 원본 데이터베이스 객체 이름이 Altibase 예약어와 충돌할 경우 객체 이름에 추가할 접미사를 설정한다.
  • 기본 설정은 _POC이다.
Data Options 
Batch Execution
  • 성능 향상을 위한 JDBC 배치 입력 사용 여부를 설정한다.
  • 기본 설정은 Yes이다.
Batch Size
  • JDBC 배치 입력 사용 시 배치 크기를 지정한다. 기본 설정은 10000이다.
Batch LOB type
  • BLOB, CLOB 데이터 타입의 배치 처리 여부를 지정한다.
  • Yes는 배치 처리를 허용하는 것을 의미한다. 단, LOB 데이터 크기에 따라 메모리 초과 (Out Of Memory) 등의 문제가 발생할 수 있음을 주의해야 한다. 또한 배치 기능을 지원하지 않는 TimesTen에서 예외가 발생할 수 있다.
  • No는 배치 처리를 허용하지 않는다.
  • 기본 설정은 No이다.
Log Insert-failed Data
  • 데이터 마이그레이션 중 입력 실패한 행(row)을 로그 파일에 작성할 것인지 설정한다.
  • 이 옵션은 Batch Execution 옵션이 No인 경우 활성화된다.
  • 기본 설정은 No이다.
File Encoding
  • 입력 실패한 레코드를 파일에 기록할 때 인코딩 문자 집합을 지정한다.
  • Log Insert-failed Data 옵션이 Yes인 경우 활성화된다.
  • 기본설정은 UTF8이다.
Data Validation Options

 

Operation
  • 검증 단계에서 수행할 연산을 선택한다.
    - DIFF : 원본 및 대상 데이터베이스 간 데이터 불일치 검사
    - FILESYNC : DIFF의 결과로 생성된 CSV 파일을 대상 데이터베이스에 반영
Write to CSV
  • 불일치 데이터를 CSV 파일에 기록할 것인지 설정한다.
Include LOB
  • 불일치 데이터를 CSV 파일에 기록할 때 LOB 데이터를 포함할 것인지 설정한다.
Data Sampling
  • 데이터 샘플링 기능 사용 여부를 설정한다.
  • Yes는 검증 단계의 소요 시간을 줄이기 위해, 샘플 데이터를 대상으로 검증 단계를 수행한다.
  • No는 전체 데이터를 대상으로 검증 단계를 수행한다.
  • 기본 설정은 Yes이다.
Percent Sampling (exact counting)
  • 테이블에서 샘플링 할 데이터의 비율을 퍼센트 단위로 지정한다.
  • 구축 단계에서 Exact Counting Method를 선택한 경우 이 옵션이 사용된다.
Record Count Sampling (approximate counting)
  • 테이블에서 샘플링 할 레코드의 개수를 지정한다.
  • 구축 단계에서 Approximate Counting Method를 선택한 경우 이 옵션이 사용된다.

 

DB to File


원본 DB의 객체와 테이블의 Data가 SQL 스크립트 파일, Form 파일 CSV 형태의 Data 파일로 각각 저장된다.

저장된 파일들은 iSQL, iLoader를 이용하여 대상 DB로 Migration 한다.

DB to File 화면설명










Execution Thread
  • 데이터 마이그레이션 실행 시 수행할 최대 쓰레드 개수를 설정한다.
  • 기본 설정은 마이그레이션 센터가 실행된 시스템의 논리 CPU 개수 * 3이다.
  • 설정 값 범위는 1 ~ 논리 CPU 개수 * 3을 권장한다.
Migration Target
  • 마이그레이션 대상을 선택한다.
    - Object & Data : 데이터베이스 객체 및 테이블 데이터를 이관한다.
    - Object : 데이터베이스 객체만, 나중에 Data는 따로 이관을 진행하여야 한다.
Object Options 
Foreign Key Migration
  • 마이그레이션 대상에 외래 키 제약 조건 포함 여부를 설정한다.
PSM Migration
  • 마이그레이션 대상에 PSM 객체(저장 프로시저, 저장 함수, Materialized View, , 타입 세트 및 트리거) 포함 여부를 설정한다.
Keep Partition Table
  • 파티션드 테이블 유지 여부를 설정한다.
  • Yes는 변환 가능한 경우 원본 DBMS와 동일한 파티션드 테이블을 생성한다.
  • 이 경우 사용자는 조정(Reconcile) 단계 중 5. Partitioned Table Conversion에서 파티션드 테이블 변환에 필요한 추가 작업을 진행해야 한다.
  • No는 논파티션드 테이블로 변경하여 생성한다. 기본 설정은 No이다.
Use Double-quoted Identifier
  • 데이터베이스 객체 이름에 큰 따옴표 사용 여부를 설정한다.
Remove FORCE from View DDL
  • 생성 구문에서 'FORCE' 키워드 삭제 여부를 설정한다.
Postfix for reserved word
  • 원본 데이터베이스 객체 이름이 Altibase 예약어와 충돌할 경우 객체 이름에 추가할 접미사를 설정한다.
Data Options 
File Encoding스크립트와 데이터 파일 출력에 사용될 인코딩 문자 집합을 지정한다.

 

Migration 진행


Migration Center를 이용하여 Migration 진행은 3단계로 진행이 된다.

 

User 단위 Migration > Build User 단계


DB User에 포함된 모든 객체 및 Data를 Migration 하기 위해서는 Build 단계의 Build User를 선택하여 Migration 진행한다.

Migration Options에 의해 객체 또는 객체 및 Data를 DB User 단위로 Migration을 진행한다.

선택 방법주 화면설명

메뉴 > Migration > Build User

or

프로젝트 창 > Build User

or

화면 상단 > Build 아이콘 선택

① Approximate counting method

원본 DBMS의 통계 값을 참조하여 테이블의 레코드 개수를 가져온다.

통계 값의 정확도에 따라 레코드 개수의 정확도가 달라진다.

② Exact counting method

원본 DBMS의 모든 테이블을 대상으로 Count 함수를 수행하여 정확한 테이블의 레코드 개수를 가져온다.

③ OK 버튼 클릭으로 다음을 진행한다.

 

Build 단계가 종료 되면 원본 DB에 대한 Build Report를 생성해 준다.

Build 종료 화면Build Report
① Build 단계가 종료 되면 Build Report 버튼을 생성한다.
② 생성된 Build Report를 복사한다.
③ Build 단계를 종료 한다.

 

Build 단계에서 수집 된 원본 DB, 대상 DB의 정보를 보여줍니다.

Build Report 예제

 

User 단위 Migration > Reconcile 단계


Migraction을 진행하기 위한 단계로 원본, 대상 DB간에 객체를 어떻게 Migraction 할 것인지에 대한 정보를 조정한다.

User 단위 Migration을 진행하면서 기본 설정에 대한 변경을 Reconcile 단계에서 변경할 수 있다.

선택 방법주 화면설명

메뉴 > Migration > Reconcile

or

프로젝트 창 > Reconcile

or

화면상단 > Reconcile 아이콘 선택
① Migration Options에 대한 설정이 정확한지 문의 내용이며 OK 버튼을 클릭하여 진행한다.
② Reconcile 단계의 상세 조정 창 상세 설명은 다음 장에서 진행

 

다음은 Reconcile 단계에서 조정할 내용에 대한 상세 설명이다.

Steps : Data Type Mapping설명
① 원본, 대상 DBMS의 Data Type을 맵핑한다.
② 변경하고자 하는 Data Type을 마우스 클릭으로 선택한다.
③ 선택한 Data Type을 Change 버튼을 클릭하여 변경한다.
④ 변경하고자 하는 Data Type을 선택한다.
숫자 타입은 Precision, Scale를  추가 설정 가능하다.
⑤ 변경한 내용이 맞지 않으면 초기화 한다.
⑥ 변경 설정이 완료되면 Next 버튼을 클릭하여 다음 단계로 넘어간다.
⑦ Cancel 버튼은 Reconcile 단계를 종료 한다.
Steps : PSM Data Type Mapping설명
① 원본, 대상 DBMS의 PSM Data Type을 맵핑한다.
② 변경하고자 하는 Data Type을 마우스 클릭으로 선택한다.
③ 선택한 Data Type을 Change 버튼을 클릭하여 변경한다.
④ 변경하고자 하는 Data Type을 선택한다.
숫자 타입은 Precision, Scale를  추가 설정 가능하다.
⑤ 변경한 내용이 맞지 않으면 초기화 한다.
⑥ 변경 설정이 완료되면 Next 버튼을 클릭하여 다음 단계로 넘어 간다.
⑦ Cancel 버튼은 Reconcile 단계를 종료 한다.
⑧ 이전 단계로 돌아간다.
Steps : Tablespace to Tablespace Mapping설명
① 원본, 대상 DBMS의 Tablespace를 맵핑한다.
② 변경하고자 하는 Tablespace를 선택한다.
Tablespace를 선택하지 않으면 기본 Tablespace로 선택된다.
③ 변경한 내용이 맞지 않으면 초기화 한다.
④ 변경 설정이 완료되면 Next 버튼을 클릭하여 다음 단계로 넘어간다.
⑤ Cancel 버튼은 Reconcile 단계를 종료 한다.
⑥ 이전 단계로 돌아간다.

 

참조

Default destnation Tablespace는  대상 DDBMS의 DB User가 사용 권한이 있어야 한다.

맵핑 Tablespace는  Migration 전에 대상 DDBMS에 생성이 되어 있어야 함.

Steps : Object to Tablespace Mapping설명
① 테이블 및 인덱스를 드래그 앤 드롭으로 Tablespace를 변경할 수 있다.
② 변경하고자 하는 테이블을 다른 Tablespace로 드래그 앤 드롭으로 이동한다.
③ 변경 설정이 완료되면 Next 버튼을 클릭하여 다음 단계로 넘어간다.
④ Cancel 버튼은 Reconcile 단계를 종료 한다.
⑤ 이전 단계로 돌아간다.
Steps : Partitioned Table Conversion설명
① 파티션트 테이블 구성을 변경한다.
② 변경하고자 하는 파티션트 테이블을 선택한다.
③ 파티션 타입을 변경한다.
원본 DBMS의 파트션 타입을 보여주며, 변경이 가능하다.
Migration 진행으로 파티션 타입은 변경하지 않는 것이 좋다.
④ 파티션 테이블에  대한 파티션 키를 설정한다.
⑤ 변경하고자 하는 파티션을 선택한다.
⑥ 선택한 파티션을 삭제한다.
⑦ 선택한 파티션 내용을 변경한다.
⑧ 선택한 파티션에 대한 변경 내용을 수정한다.
⑨ 추가할 파티션 내용을 입력한다.
⑩ 변경 설정이 완료되면 Next 버튼을 클릭하여 다음 단계로 넘어간다.

 

참조

Altibase DB의 List, Range 파티션테이블은 Default Partition을 가지고 있어야 한다.

Migration Options에서 Keep Partitioned Table을 NO로 선택하면 파트션드 테이블을 일반 테이블로 Migration 한다.

Steps : Select Editing설명
① 원본 DBMS의 테이블 에서 데이터 추출 시 사용할 SELECT문을 수정한다.
② 수정할 SELECT문에 들어갈 Hint, Where 조건을 마우스 더블 클릭하여 입력한다.
③ 수정한 내용을 초기화 한다.
④ Cancel 버튼은 Reconcile 단계를 종료 한다.
⑤ 변경 설정이 완료되면 Next 버튼을 클릭하여 다음 단계로 넘어간다.
⑥ 이전 단계로 돌아간다.
Steps : DDL Editing설명
① 선행 PSM 관련 내용을 Converter 한다.
② 객체에 대한 스크립트 내용을 보여준다.
③ 변경하고자 하는 객체 타입을 선택한다.
④ 객체 타입의 객체를 선택한다.
⑤ 변경하고자 하는 내용을 수정한다.
⑥ 변경한 스크립트를 저장한다.
⑦ Cancel 버튼은 Reconcile 단계를 종료 한다.
⑧ Reconcile 단계 저장하고 종료 메시지 창을 연다.
⑨ 이전 단계로 돌아간다.
⑩ Reconcile 단계 전체 종료

참조

Save 버튼은 Destination DDL 내용이 변경되어야만 활성화 된다.

 

Reconcile 단계에서 진행 된 보고서를 보여준다.

Reconcile Report 예제

 

User 단위 Migration > Run 단계


Run 단계는 원본 DB의 DB 객체를 Migraction Options에 따라 DB 또는 외부 파일로 복사한다.

Run 단계 완료 후에 생성되는 실행 보고서에 실행 결과가 RunReport4Summary.html 파일로 생성되면, 실행 실패한 객체에 대한 보고서는 RunReport4Missing.html 파일에 상세히 기술된다.

선택 방법수행 화면설명

메뉴 > Migration > Run

or

프로젝트 창 > Run

or

화면상단 > Run 아이콘 선택
① Run 단계 수행을 진행한다.
② Run 단계를 Cancel 한다.
③ ① 번 버튼을 수행하면 자동으로 Migration을 진행 후 보고서 창을 연다.
④ 보고서 파일을 복사한다.
⑤ Run 단계를 종료 한다.

 

Run 단계에서 진행 된 보고서 입니다.

Run Report 예제

 

Table 단위 Migration > Build Table 단계


Migraction 대상 중 Table에 대해서만 객체 및 Data를 Migraction 한다.

선택 방법주 화면설명

메뉴 > Migration > Build Table

or

프로젝트 창 > Build Table

or

화면상단 > Table 아이콘 선택
① Approximate counting method
원본 DBMS의 통계 값을 참조하여 테이블의 레코드 개수를 가져온다.
통계 값의 정확도에 따라 레코드 개수의 정확도가 달라진다.
② Exact counting method
원본 DBMS의 모든 테이블을 대상으로 Count 함수를 수행하여 정확한 테이블의 레코드 개수를 가져온다.
③ OK 버튼 클릭으로 다음을 진행한다.
Table 선택설명
① 아이콘 + 버튼을 클릭하여 Table 선택 창을 호출한다.
② Build Table 단계를 종료 한다.
③ keyword에 입력한 명칭에 맞게 Table을 리스트화 하고, 입력하지 않으면 전체 Table 리스트를 출력한다.
④ Keyword에 맞게 Table을 찾아준다.
⑤ 리스트 된 Table을 하나씩 선택 가능하다.
⑥ 리스트 된 Table을 모두 선택 한다.
⑦ 선택 된 테이블을 Migration 리스트에 추가 한다.
⑧ Table 선택 창을 종료 한다.
⑨ 기존에 선택 된 Table 외 추가 선택이 가능하다.
⑩ Select Tables 리스트에서 선택 된 Table을 삭제 한다.
⑪ 선택한 Table을 Build 한다.
⑫ Table Build 단계를 종료 한다.
⑬ Build Report 를 생성한다.

 

Build 단계에서 수집된 원본 DB, 대상 DB의 정보를 보여줍니다.

Build Report 예제

 

Table 단위 Migration > Reconcile 단계


Migraction을 진행 계획하기 위한 단계로 원본, 대상 DB 간에 객체를 어떻게 Migraction 할 것인지에 대한 정보를 조정한다.

선택한 Table 단위 Migraction을 진행하면서 기본 설정에 대한 변경을 Reconcile 단계에서 변경할 수 있다.

DB User 단위의 Migraction 조정 작업과 동일한 구성으로 진행한다. 상세 내용은 DB User 단위를 참조

선택 방법주 화면설명

메뉴 > Migration > Reconcile

or

프로젝트 창 > Reconcile

or

화면상단 > Reconcile 아이콘 선택

① Migration Options에 대한 설정이 정확한지 문의 내용이며 OK 버튼을 클릭하여 진행한다.
② Reconcile 단계의 상세 조정 창 상세 설명은 DB User 단위를 참조

 

Table 단위 Migration > Run 단계


Run 단계는 원본 DB의 객체를 Migraction Options에 따라 대상 DB 또는 외부 파일로 복사한다.

Run 단계 완료 후 생성되는 실행 보고서에 실행 결과가 RunReport4Summary.html 파일로 생성되며 실행 실패한 객체에 대한 보고서는 RunReport4Missing.html 파일에 상세히 기술 된다.

선택 방법수행 화면설명

메뉴 > Migration > Run

or

프로젝트 창 > Run

or

화면상단 > Run 아이콘 선택
① Run 단계 수행을 진행한다.
② Run 단계를 Cancel 한다.
③ ① 번 버튼을 수행하면 자동으로 Migration을 진행 후 보고서 창을 연다.
④ 보고서 파일을 복사한다.
⑤ Run 단계를 종료 한다.

 

검증 단계


검증 단계에서는 실행 단계에서 수행한 데이터 이관이 정확하게 수행되었는지 검사한다. 검증이 완료된 후 사용자에게 검증 보고서를 제공하여 사후 처리를 적절히 수행할 수 있도록 한다.

보고서는 원본 및 대상 DB 정보와 함께 검증을 완료한 테이블 리스트 및 데이터 일치, 불일치 건수 정보를 나열한다.

선택 방법수행 화면설명

메뉴 > Migration > Data Validation

or

프로젝트 창 > Data Validation
① Data 검증을 진행한다.
② Data 검증을 Cancel 한다.
③ Data 검증 내용

 

CLI 모드 수행


Migraction Center는 GUI 모드 및 CLI 모드를 지원한다. 기본 Migraction 기본 구성은 GUI 모드로 구성을 하는 것이 좋다.

CLI 모드는 GUI 모드에서 Migraction 구성을 진행하고 Run 단계에서 수행을 하면 Data Migraction 시 성능의 이점이 있다.

GUI에서 CLI 실행 단계 수행 방법을 가이드 한다.

  1. Migraction Center를 GUI 모드에서 Reconcile 단계까지 수행
  2. GUI 모드의 Migraction Center 전체 폴더를 Linux 서버의 임의의 디렉토리에 업로드
  3. 업로드한 Migraction 프로젝트를 CLI로 수행
  4. CLI Run 단계 수행 방법
    $ ./migcenter.sh run [project_path]

    [project_path] 는 프로젝트 절대 경로를 입력한다.

 

 

변환 가능 객체


구축 방식에 따라 Migration 객체의 이관 여부는 다르다. Migration Center에서 지원하지 않는 원본 DBMS의 객체는 사용자가 수동으로 변환해야 한다.

구축 단계에서 객체 생성 구문은 SrcDbObj_Create.sql, BuildReport4Unsupported.html 파일에 기록하고 있으므로 사용자는 이 파일들을 변환 작업에 참조할 수 있다.

 

Altibase to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO테이블과 칼럼에 명시된 주석도 함께 마이그레이션 된다.
Primary Key 제약OO 
Unique 제약OO 
Check 제약OO 
Foreign Key 제약OO 
IndexOO 
SequenceOX 
QueueOX 
Private Synonym부분 지원X다른 schema 내의 객체를 참조하는 시노님도 마이그레이션 된다.
Procedure부분 지원X별도의 변환 작업 없이 원본 DDL 그대로 수행된다.
Function부분 지원X
Package부분 지원X
View부분 지원X
Materialized View부분 지원X
Trigger부분 지원X

 

Altibase to Oracle


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO 
Primary Key 제약OO 
Unique 제약OO 
Check 제약OO 
Foreign Key 제약OO 
IndexOO 
SequenceOX 
QueueXX변환 가능한 객체가 없기 때문에, build 단계에서 자동으로 제외된다.
Private Synonym부분 지원X다른 schema 내의 객체를 참조하는 시노님도 마이그레이션 된다.
Procedure부분 지원X

별도의 변환 작업 없이 원본 DDL 그대로 수행된다.

Function부분 지원X
Package부분 지원X
View부분 지원X
Materialized View부분 지원X

별도의 변환 작업 없이 원본 DDL 그대로 수행된다.

참고로 Migration을 위해서는 베이스 테이블에 Primary Key가 있어야 한다.
Trigger부분 지원X별도의 변환 작업 없이 원본 DDL 그대로 수행된다.

 

Cubrid to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO테이블과 칼럼에 명시된 주석도 함께 마이그레이션 된다.
Primary Key 제약OO 
Unique 제약OO 
Foreign Key 제약OO 
IndexOO

CUBRIDReverse indexPrefix length indexAltibase에서 지원하지 않는다.

Reverse index는 인덱스 생성 시 키 값을 역으로 넣는 방식으로, Altibase 마이그레이션에서 지원하지 않는다.

Prefix length index는 키 값의 일정 부분만을 인덱싱하는 기법으로, 마이그레이션Altibase의 일반 인덱스로 대체된다.

auto_incrementOOSequence마이그레이션 된다. 
SerialOX
ProcedureXX

구축(Build) 단계에서 원본 데이터베이스에서 수집한 객체 생성 구문을 SrcDbObj_Create.sqlBuildReport4Unsupported.html 파일에 기록한다.

FunctionXX
ViewXX
TriggerXX

 

Imformix to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO테이블과 칼럼에 명시된 주석도 함께 마이그레이션 된다.
Primary Key 제약OO 
Unique 제약OO 
Foreign Key 제약OO 
IndexOO 
Serial 칼럼 타입OOSequence마이그레이션 된다.
SequenceOX 
Private Synonym부분 지원X동일 schema 내의 객체를 참조하는 시노님만 마이그레이션 된다.
ProcedureXX구축(Build) 단계에서 원본 데이터베이스에서 수집한 객체 생성 구문을 SrcDbObj_Create.sqlBuildReport4Unsupported.html 파일에 기록한다.
FunctionXX
ViewXX
TriggerXX

 

MySQL to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO테이블과 칼럼에 명시된 주석도 함께 마이그레이션 된다.
Primary Key 제약OO 
Unique 제약OO 
Check 제약OO 
Foreign Key 제약OO 
IndexOO 
auto_increment 칼럼 속성OOSequence마이그레이션 된다.
ProcedureXX

구축(Build) 단계에서 원본 데이터베이스에서 수집한 객체 생성 구문을 SrcDbObj_Create.sql과 BuildReport4Unsupported.html 파일에 기록한다.

FunctionXX
ViewXX
TriggerXX

 

Oracle to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO

임시 테이블을 마이그레이션 하기 위해서는 휘발성 테이블스페이스가 Altibase에 있어야 한다.

Altibase의 임시 테이블은 휘발성 테이블스페이스에만 생성할 수 있기 때문이다.테이블과 칼럼에 명시된 주석(comment)도 함께 마이그레이션 된다.

Primary Key 제약OO 
Unique 제약OO 
Check 제약OO 
Foreign Key 제약OO 
IndexOO 
SequenceOX 
Private Synonym부분 지원X동일 schema 내의 객체를 참조하는 시노님만 마이그레이션 된다.
Procedure부분 지원X

PSM 변환기에 정의된 규칙에 따라 객체 생성 문장을 변환하고 마이그레이션을 시도한다.

Function부분 지원X
Package부분 지원X
View부분 지원X
Materialized View부분 지원X
Trigger부분 지원X

 

MSSQL to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO테이블과 칼럼에 명시된 주석도 함께 마이그레이션 된다.
Primary Key 제약OO 
Unique 제약OO 
Check 제약OO 
Foreign Key 제약OO 
IndexOO 
Identity 칼럼 속성OOSequence마이그레이션 된다.
SequenceOXSQL Server 2012 지원
Private Synonym부분 지원X동일 schema 내의 객체를 참조하는 시노님만 마이그레이션 된다.
ProcedureXX

구축(Build) 단계에서 원본 데이터베이스에서 수집한 객체 생성 구문을 SrcDbObj_Create.sql과 BuildReport4Unsupported.html 파일에 기록한다.

FunctionXX
ViewXX
TriggerX

 

TimesTen to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO

임시 테이블을 Altibase로 마이그레이션 하기 위해서는 휘발성 테이블스페이스가 Altibase에 있어야 한다.

Altibase의 임시 테이블은 휘발성 테이블스페이스에만 생성할 수 있기 때문이다. 테이블과 칼럼에 명시된 주석(comment)도 함께 마이그레이션 된다.

Primary Key 제약OO 
Unique 제약OO 
Foreign Key 제약OO 
IndexOO

TimesTen의 인덱스는 정렬 순서(ASC/DESC)나 크기에 대한 정보를 제공하지 않는다. 따라서 인덱스 순서는 기본값(ASC)으로 이관하며, 크기는 표시하지 않는다.

TimesTen에서 제공되는 세 가지(hash, range, bitmap) 인덱스 중에서 hash·range 인덱스는 AltibaseB-tree index로 변환되어 생성되며, bitmap 인덱스는 마이그레이션을 지원하지 않는다.

 한 인덱스 컬럼에 primary keyunique 제약이 있을 경우, 해당 인덱스는 Altibase에서 허용하지 않기 때문에 마이그레이션에서 제외되며 build reportMissing 탭에서 확인할 수 있다.

SequenceOX 
Private Synonym부분 지원X동일 schema 내의 객체를 참조하는 시노님만 마이그레이션 된다.
Procedure부분 지원XTimesTen 11.2 지원
Function부분 지원X
Package부분 지원X
View부분 지원X
Materialized View부분 지원X
Trigger부분 지원X

 

Tibero to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO

Tibero의 임시 테이블을 Altibase마이그레이션 하기 위해서는 휘발성 테이블스페이스가 Altibase에 있어야 한다.

Altibase의 임시 테이블은 휘발성 테이블스페이스에만 생성할 수 있기 때문이다. 테이블과 칼럼에 명시된 주석(comment)도 함께 마이그레이션 된다.

Primary Key 제약OO 
Unique 제약OO 
Check 제약OO 
Foreign Key 제약OO 
IndexOOTiberoLOB 타입 칼럼에 자동으로 생성되는 indexAltibase에서 지원하지 않으므로 이관되지 않는다
SequenceOX 
Private Synonym부분 지원X동일 schema 내의 객체를 참조하는 시노님만 마이그레이션 된다.
Procedure부분 지원XPSM 변환기에 정의된 규칙에 따라 객체 생성 문장을 변환하고 마이그레이션을 시도한다.
Function부분 지원X
Package부분 지원X
View부분 지원X
Materialized View부분 지원X
Trigger부분 지원X

참고

Tibero의 Procedure, Function, View, Materialized View, Trigger는 객체를 마이그레이션 하기 위해 Third-Party에서 제공하는 Oracle용 SQL 파서를 사용한다.

따라서, Oracle 문법과 호환되지 않는 Tibero 고유의 문법으로 생성된 객체는 변환과정에서 파싱 에러가 발생가능하며, 이 경우 사용자가 수동으로 문법을 변환해야 한다.

 

PostgerSQL to Altibase


객체 유형Build User 가능 여부Build Table 가능 여부비고
TableOO

컬럼에 명시된 주석(comment)도 함께 마이그레이션된다.
PostgreSQL은 테이블에 생성할 수 있는 최대 컬럼의 개수가 1,600개이고 Altibase는 1,024개이므로, 마이그레이션 수행 시 주의해야 한다.

Primary Key 제약OO 
Unique 제약OO 
Check 제약OO 
Foreign Key 제약OOCASCADE, NO ACTION, SET NULL 옵션은 양쪽 모두 같은 옵션으로 마이그레이션 대상이다.
RESTRICT 옵션은 Altibase에서 Foreign key 옵션이 없을 때와 동작이 같아서, 마이그레이션 시 이 옵션은 삭제한다.
SET DEFAULT 옵션은 Altibase에서 지원하지 않기 때문에 마이그레이션 수행 시 SET NULL로 변환한다.
IndexOOPostgreSQL의 다양한 인덱스 타입 중 Altibase에서 지원하는 B-tree와 R-tree만 마이그레이션 대상이다.
SequenceOXPostgreSQL 시퀀스의 기본 최댓값 9223372036854775807은 Altibase 시퀀스의 기본 최댓값 9223372036854775806으로 강제 변환한다.
PostgreSQL 시퀀스의 캐시 크기가 1이면 Altibase에서 CACHE 절을 삭제하고 Altibase의 기본 캐시 크기 20으로 생성한다.

'Build Table'에서 사용자가 명시적으로 생성한 시퀀스는 마이그레이션 대상에서 제외되나, 마이그레이션 대상 테이블 컬럼의 Serial 데이터 타입을 위해 생성된 시퀀스는 테이블과 함께 마이그레이션된다.
FunctionXX마이그레이션 미지원 대상이다. 구축(Build) 단계에서 PostgreSQL에서 수집한 객체 생성 구문을 SrcDbObj_Create.sql과 BuildReport4Unsupported.html 파일에 기록한다.


ViewXX
Materialized ViewXX
TriggerXX

참고

위 표에 기록되지 않은 PostgreSQL의 객체(예, Exclusion 제약, Type, Enum 등)는 Altibase에 대응되는 객체가 없어 마이그레이션 대상에서 제외한다.

 

 

 

 

 

 

 

 

  • No labels