Linux, Unix, Windows 및 Amazon RDS 데이터베이스(Db2)용 IBM Db2를의 소스로 사용 LUW AWS DMS - AWS 데이터베이스 마이그레이션 서비스

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Linux, Unix, Windows 및 Amazon RDS 데이터베이스(Db2)용 IBM Db2를의 소스로 사용 LUW AWS DMS

AWS Database Migration Service (LUW)를 사용하여 Linux, Unix, Windows 및 Amazon용 IBM Db2RDS(Db2) 데이터베이스에서 지원되는 대상 데이터베이스로 데이터를 마이그레이션할 수 있습니다AWS DMS.

가 소스로 AWS DMS 지원하는 Linux, Unix, Windows 및의 Db2 버전에 대한 자세한 내용은 섹션을 참조RDS하세요에 대한 소스 AWS DMS.

Secure Sockets Layer(SSL)를 사용하여 Db2 LUW 엔드포인트와 복제 인스턴스 간의 연결을 암호화할 수 있습니다. Db2 LUW 엔드포인트와 SSL 함께를 사용하는 방법에 대한 자세한 내용은 섹션을 참조하세요SSL와 함께 사용 AWS Database Migration Service.

Db2를의 소스LUW로 사용할 때의 사전 조건 AWS DMS

Db2 LUW 데이터베이스를 소스로 사용하려면 다음 사전 조건이 필요합니다.

변경 데이터 캡처(CDC)라고도 하는 지속적 복제를 활성화하려면 다음을 수행합니다.

  • 데이터베이스를 복구 가능으로 설정하여에서 변경 사항을 캡처 AWS DMS 해야 합니다. 데이터베이스 구성 파라미터인 LOGARCHMETH1LOGARCHMETH2 중 하나, 또는 둘 모두가 ON으로 설정되어 있어야 데이터베이스를 복구할 수 있습니다.

    데이터베이스를 복구할 수 있는 경우는 필요한 ARCHIVE LOG 경우 Db2에 액세스할 AWS DMS 수 있습니다.

  • DB2 트랜잭션 로그를 사용할 수 있고 처리할 수 있는 보존 기간이 충분한지 확인합니다 AWS DMS.

  • DB2 트랜잭션 로그 레코드를 추출하려면 SYSADM 또는 DBADM 권한이 필요합니다. 사용자 계정에 다음 권한을 부여합니다.

    • SYSADM 또는 DBADM

    • DATAACCESS

    참고

    전체 로드 전용 작업의 경우 DMS 사용자 계정에 DATAACCESS 권한이 필요합니다.

  • LUW 버전 9.7IBMDB2에를 소스로 사용하는 경우 다음과 CurrentLSN 같이 추가 연결 속성(ECA)을 설정합니다.

    CurrentLSN=LSN 여기서는 복제를 시작할 로그 시퀀스 번호(LSN)를 LSN 지정합니다. 또는 CurrentLSN=scan.

  • Amazon RDS for Db2를 소스LUW로 사용하는 경우 아카이브 로그를 사용할 수 있는지 확인합니다 AWS DMS. AWS관리형 Db2 데이터베이스는 가능한 한 빨리 아카이브 로그를 제거하므로 로그를 계속 사용할 수 있는 시간을 늘려야 합니다. 예를 들어, 로그 보존 시간을 24시간으로 늘리려면 다음 명령을 실행합니다.

    db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '24')"

    Amazon RDS for Db2 LUW 절차에 대한 자세한 내용은 Amazon Relational Database Service 사용 설명서의 Amazon RDS for Db2 저장 프로시저 참조를 참조하세요. Amazon Relational Database Service

Db2를 소스LUW로 사용할 때의 제한 사항 AWS DMS

AWS DMS 는 클러스터링된 데이터베이스를 지원하지 않습니다. 그러나 클러스터의 각 엔드포인트에 LUW 대해 별도의 Db2를 정의할 수 있습니다. 예를 들어 클러스터의 노드 중 하나를 사용하여 전체 로드 마이그레이션 작업을 생성한 다음 각 노드에서 별도의 작업을 생성할 수 있습니다.

AWS DMS 는 소스 Db2 LUW 데이터베이스의 BOOLEAN 데이터 유형을 지원하지 않습니다.

지속적 복제(CDC)를 사용하는 경우 다음 제한이 적용됩니다.

  • 파티션이 여러 개인 테이블이 잘리면 AWS DMS 콘솔에 표시된 DDL 이벤트 수가 파티션 수와 같습니다. 이는 Db2가 각 파티션에 DDL 대해 별도의를 LUW 기록하기 때문입니다.

  • 파티셔닝된 테이블에서는 다음 DDL 작업이 지원되지 않습니다.

    • ALTER TABLE ADD PARTITION

    • ALTER TABLE DETACH PARTITION

    • ALTER TABLE ATTACH PARTITION

  • AWS DMS 는 DB2고가용성 재해 복구(HADR) 대기 인스턴스에서 지속적인 복제 마이그레이션을 지원하지 않습니다. 대기 인스턴스에 액세스할 수 없습니다.

  • DECFLOAT 데이터 형식은 지원되지 않습니다. 따라서 지속적인 복제 중에는 DECFLOAT 열 변경 사항이 무시됩니다.

  • RENAME COLUMN 문은 지원되지 않습니다.

  • 다차원 클러스터링(MDC) 테이블에 대한 업데이트를 수행할 때 각 업데이트는 AWS DMS 콘솔에 INSERT + 로 표시됩니다DELETE.

  • 작업 설정 복제에 LOB 열 포함이 활성화되지 않은 경우 열이 있는 테이블은 계속 복제하는 동안 일시 중지LOB됩니다.

  • Db2 LUW 버전 10.5 이상의 경우 데이터가 저장된 out-of-row 가변 길이 문자열 열은 무시됩니다. 이 제한은 VARCHAR 및와 같은 데이터 형식의 열에 대해 확장된 행 크기로 생성된 테이블에만 적용됩니다VARGRAPHIC. 이 제한을 해결하려면 페이지 크기가 더 큰 테이블 공간으로 테이블을 이동하세요. 자세한 내용은 DB2 테이블스페이스의 페이지 크기를 변경하려면 어떻게 해야 하나요?를 참조하세요.

  • 지속적인 복제를 위해 DMS는 DB2 LOAD 유틸리티가 페이지 수준에서 로드한 데이터 마이그레이션을 지원하지 않습니다. 대신 SQL 삽입을 사용하는 IMPORT 유틸리티를 사용합니다. 자세한 내용은 differences between the import and load utilities를 참조하세요.

  • 복제 작업이 실행되는 동안는 DATA CAPTURE CHANGE 속성으로 테이블이 생성된 CREATE TABLE DDLs 경우에만를 DMS 캡처합니다.

  • DMS 에는 Db2 데이터베이스 파티션 기능(DPF)을 사용할 때 다음과 같은 제한 사항이 있습니다.

    • DMS는 DPF 환경의 Db2 노드 간 트랜잭션을 조정할 수 없습니다. 이는 IBM DB2READLOG API 인터페이스 내의 제약으로 인한 것입니다. 에서 DPF트랜잭션은가 데이터를 DB2 분할하는 방식에 따라 여러 Db2 노드에 걸쳐 있을 수 있습니다. 따라서 DMS 솔루션은 각 Db2 노드에서 독립적으로 트랜잭션을 캡처해야 합니다.

    • DMS는 여러 DMS 소스 엔드포인트에서를 로 설정하여 DPF 클러스터의 각 Db2 노드1에서 로컬 트랜잭션을 캡처connectNode할 수 있습니다. 이 구성은 DB2 서버 구성 파일에 정의된 논리적 노드 번호에 해당합니다db2nodes.cfg.

    • 개별 Db2 노드의 로컬 트랜잭션은 더 큰 글로벌 트랜잭션의 일부일 수 있습니다.는 다른 Db2 노드의 트랜잭션과 조정하지 않고 대상에 각 로컬 트랜잭션을 독립적으로 DMS 적용합니다. 이러한 독립적인 처리는 특히 파티션 간에 행을 이동할 때 복잡성을 초래할 수 있습니다.

    • 가 여러 Db2 노드에서 DMS 복제하는 경우는 각 Db2 노드에 대해 독립적으로 작업을 DMS 적용하므로 대상에 대한 올바른 작업 순서를 보장할 수 없습니다. 각 Db2 노드와 독립적으로 로컬 트랜잭션을 캡처하는 것이 특정 사용 사례에 적합한지 확인해야 합니다.

    • DPF 환경에서 마이그레이션할 때는 먼저 캐시된 이벤트 없이 전체 로드 작업을 실행한 다음 CDC전용 작업을 실행하는 것이 좋습니다. 전체 로드 시작 타임스탬프 또는 StartFromContext 엔드포인트 설정을 사용하여 설정한 LRI (로그 레코드 식별자)부터 시작하여 Db2 노드당 하나의 작업을 실행하는 것이 좋습니다. 복제 시작점을 결정하는 방법에 대한 자세한 내용은 IBM 지원 설명서의 복제 시작을 위한 LSN 또는 LRI 값 찾기를 참조하세요.

  • 지속적 복제(CDC)의 경우 특정 타임스탬프에서 복제를 시작하려면 StartFromContext 연결 속성을 필수 타임스탬프로 설정해야 합니다.

  • 현재 DMS는 데이터베이스 솔루션을 확장하는 데 사용할 수 DB2 LUW 있는 확장인 Db2 pureScale Feature를 지원하지 않습니다.

  • DATA CAPTURE CHANGES 테이블 옵션은 DB2 데이터 복제 프로세스의 중요한 사전 조건입니다. 테이블을 생성할 때이 옵션을 활성화하지 않으면 특히 CDC (데이터 캡처 변경)의 경우 이전 시작점에서 시작된 복제 작업만 누락된 데이터가 발생할 수 있습니다. AWS DMS 는 CDC 또는 FULL+CDC 작업을 다시 시작할 때 기본적으로이 속성을 활성화합니다. 그러나 작업 재시작 전에 소스 데이터베이스에서 변경한 내용은 누락될 수 있습니다.

    ALTER TABLE TABLE_SCHEMA.TABLE_NAME DATA CAPTURE CHANGES INCLUDE LONGVAR COLUMNS;

Db2를의 소스LUW로 사용할 때 엔드포인트 설정 AWS DMS

엔드포인트 설정을 사용하여 추가 연결 속성을 사용하는 것과 유사한 Db2 LUW 소스 데이터베이스를 구성할 수 있습니다. AWS DMS 콘솔을 사용하거나 --ibm-db2-settings '{"EndpointSetting": "value", ...}' JSON의 create-endpoint 명령을 사용하여 구문과 AWS CLI함께 소스 엔드포인트를 생성할 때 설정을 지정합니다.

다음 표에는 Db2를 소스LUW로 사용할 수 있는 엔드포인트 설정이 나와 있습니다.

명칭 설명

CurrentLSN

지속적 복제(CDC)의 경우 CurrentLSN를 사용하여 복제를 시작할 로그 시퀀스 번호(LSN)를 지정합니다.

MaxKBytesPerRead

NUMBER 값으로서 읽기당 최대 바이트 수입니다. 기본값은 64KB입니다.

SetDataCaptureChanges

지속적인 복제(CDC)를 BOOLEAN 값으로 활성화합니다. 기본값은 true입니다.

StartFromContext

지속적 복제(CDC)의 경우 StartFromContext를 사용하여 복제를 시작할 위치에서 로그의 하한을 지정합니다.는 다양한 형태의 값을 StartFromContext 허용합니다. 유효한 값으로는 다음이 포함됩니다.

  • timestamp (UTC). 예:

    '{"StartFromContext": "timestamp:2021-09-21T13:00:00"}'
  • NOW

    IBM DB2 LUW 버전 10.5 이상의 경우 현재LSN: 스캔과 NOW 함께는 최신에서 작업을 시작합니다LSO. 예시:

    '{"CurrentLSN": "scan", "StartFromContext": "NOW"}'
  • 특정 LRI. 예시:

    '{"StartFromContext": "0100000000000022CC000000000004FB13"}'

로그 파일의 LRI/LSN 범위를 확인하려면 다음 예제와 같이 db2flsn 명령을 실행합니다.

db2flsn -db SAMPLE -lrirange 2

예제의 출력은 다음과 비슷합니다.

S0000002.LOG: has LRI range 00000000000000010000000000002254000000000004F9A6 to 000000000000000100000000000022CC000000000004FB13

해당 출력에서 로그 파일은 S0000002LOG이고 StartFromContext LRI 값은 범위 끝의 34바이트입니다.

0100000000000022CC000000000004FB13

IBM Db2의 소스 데이터 유형 LUW

Db2를 소스LUW로 사용하는 데이터 마이그레이션은 대부분의 Db2 LUW 데이터 유형을 AWS DMS 지원합니다. 다음 표에는 사용 시 지원되는 Db2 LUW 소스 데이터 유형 AWS DMS 과 AWS DMS 데이터 유형의 기본 매핑이 나와 있습니다. Db2 LUW 데이터 유형에 대한 자세한 내용은 Db2 LUW 설명서를 참조하세요.

대상에서 매핑된 데이터 형식을 보는 방법에 대한 자세한 내용은 사용 중인 대상 엔드포인트 단원을 참조하십시오.

AWS DMS 데이터 유형에 대한 자세한 내용은 섹션을 참조하세요AWS Database Migration Service에서 사용되는 데이터 형식.

Db2 LUW 데이터 형식

AWS DMS 데이터 유형

INTEGER

INT4

SMALLINT

INT2

BIGINT

INT8

DECIMAL (p,s)

NUMERIC (p,s)

FLOAT

REAL8

DOUBLE

REAL8

REAL

REAL4

DECFLOAT (p)

정밀도가 16이면 , 정밀도가 34REAL8이면 STRING

GRAPHIC (n)

WSTRING길이가 0보다 크고 127보다 작거나 같은 더블 바이트 문자의 고정 길이 그래픽 문자열의 경우

VARGRAPHIC (n)

WSTRING길이가 0보다 크고 16,352배 바이트 이하인 다양한 길이의 그래픽 문자열의 경우

LONG VARGRAPHIC (n)

CLOB길이가 0보다 크고 16,352배 바이트 이하인 다양한 길이의 그래픽 문자열의 경우

CHARACTER (n)

STRING길이가 0보다 크고 255보다 작거나 같은 더블 바이트 문자의 고정 길이 문자열의 경우

VARCHAR (n)

STRING길이가 0보다 크고 32,704보다 작거나 같은 더블 바이트 문자의 다양한 길이 문자열의 경우

LONG VARCHAR (n)

CLOB길이가 0보다 크고 32,704보다 작거나 같은 더블 바이트 문자의 다양한 길이 문자열의 경우

CHAR (n) FOR BIT DATA

BYTES

VARCHAR (n) FOR BIT DATA

BYTES

LONG VARCHAR FOR BIT DATA

BYTES

DATE

DATE

TIME

TIME

TIMESTAMP

DATETIME

BLOB (n)

BLOB

최대 길이는 2,147,483,647바이트

CLOB (n)

CLOB

최대 길이는 2,147,483,647바이트

DBCLOB (n)

CLOB

최대 길이는 1,073,741,824 2바이트 문자

XML

CLOB