IBMDB2를 사용하여 z/OS 데이터베이스에 연결 AWS Schema Conversion Tool - AWS Schema Conversion Tool

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

IBMDB2를 사용하여 z/OS 데이터베이스에 연결 AWS Schema Conversion Tool

를 AWS SCT 사용하여 스키마, 코드 개체 및 응용 프로그램 코드를 IBM Db2 for z/OS에서 다음 대상으로 변환할 수 있습니다.

  • 아마존 RDS 포 마이 SQL

  • 아마존 Aurora 마이 호환 에디션 SQL

  • RDS포스트그레용 아마존 SQL

  • 아마존 Aurora SQL 포스트그레 호환 에디션

Db2 for z/OS를 소스 데이터베이스로 사용하기 위한 사전 조건

z/OS용 IBM Db2 버전 12 기능 수준 100 데이터베이스 버전은 z/OS용 Db2 버전 12의 새로운 기능 대부분을 지원하지 않습니다. IBM 이 데이터베이스 버전은 Db2 버전 11에 대한 폴백 및 Db2 버전 11과의 데이터 공유를 지원합니다. Db2 버전 11의 지원되지 않는 기능이 변환되지 않도록 하려면 z/OS용 IBM Db2 데이터베이스 함수 수준 500 이상을 원본으로 사용하는 것이 좋습니다. AWS SCT

다음 코드 예제를 사용하여 소스 IBM Db2 for z/OS 데이터베이스의 버전을 확인할 수 있습니다.

SELECT GETVARIABLE('SYSIBM.VERSION') as version FROM SYSIBM.SYSDUMMY1;

이 코드가 버전 DSN12015 이상을 반환해야 합니다.

다음 코드 예제를 사용하여 소스 IBM Db2 for z/OS 데이터베이스의 APPLICATION COMPATIBILITY 특수 레지스터 값을 확인할 수 있습니다.

SELECT CURRENT APPLICATION COMPATIBILITY as version FROM SYSIBM.SYSDUMMY1;

이 코드가 버전 V12R1M500 이상을 반환해야 합니다.

Db2 for z/OS를 소스 데이터베이스로 사용하기 위한 권한

Db2 for z/OS 데이터베이스에 연결하고 시스템 카탈로그 및 테이블을 읽는 데 필요한 권한은 다음과 같습니다.

  • SELECTONSYSIBM. LOCATIONS

  • SELECTONSYSIBM. SYSCHECKS

  • SELECTONSYSIBM. SYSCOLUMNS

  • SELECTONSYSIBM. SYSDATABASE

  • SELECTONSYSIBM. SYSDATATYPES

  • SELECTONSYSIBM. SYSDUMMY1

  • SELECTONSYSIBM. SYSFOREIGNKEYS

  • SELECTONSYSIBM. SYSINDEXES

  • SELECTONSYSIBM. SYSKEYCOLUSE

  • SELECTONSYSIBM. SYSKEYS

  • SELECTONSYSIBM. SYSKEYTARGETS

  • SELECTONSYSIBM. SYSJAROBJECTS

  • SELECTONSYSIBM. SYSPACKAGE

  • SELECTONSYSIBM. SYSPARMS

  • SELECTONSYSIBM. SYSRELS

  • SELECTONSYSIBM. SYSROUTINES

  • SELECTONSYSIBM. SYSSEQUENCES

  • SELECTONSYSIBM. SYSSEQUENCESDEP

  • SELECTONSYSIBM. SYSSYNONYMS

  • SELECTONSYSIBM. SYSTABCONST

  • SELECTONSYSIBM. SYSTABLES

  • SELECTONSYSIBM. SYSTABLESPACE

  • SELECTONSYSIBM. SYSTRIGGERS

  • SELECTONSYSIBM. SYSVARIABLES

  • SELECTONSYSIBM. SYSVIEWS

Db2 for z/OS 테이블을 Postgre SQL 파티션을 나눈 테이블로 변환하려면 다음과 같이 유틸리티를 사용하여 데이터베이스의 테이블스페이스 및 테이블에 대한 통계를 수집하십시오. RUNSTATS

LISTDEF YOURLIST INCLUDE TABLESPACES DATABASE YOURDB RUNSTATS TABLESPACE LIST YOURLIST TABLE (ALL) INDEX (ALL KEYCARD) UPDATE ALL REPORT YES SHRLEVEL REFERENCE

이전 예제에서 YOURDB 자리 표시자를 소스 데이터베이스의 이름으로 바꿉니다.

Db2 for z/OS에 소스로 연결

다음 절차에 따라 AWS SCT를 사용하여 Db2 for z/OS 소스 데이터베이스에 연결합니다.

Db2 for z/OS용 원본 데이터베이스에 연결하려면 IBM
  1. 에서 소스 AWS Schema Conversion Tool추가를 선택합니다.

  2. IBM Db2 for z/OS를 선택하고 다음을 선택합니다.

    소스 추가 대화 상자가 나타납니다.

  3. 연결 이름에 데이터베이스의 이름을 입력합니다. AWS SCT 는 왼쪽 패널의 트리에 이 이름을 표시합니다.

  4. 의 데이터베이스 자격 증명을 AWS Secrets Manager 사용하거나 수동으로 입력합니다.

    • Secrets Manager의 데이터베이스 보안 인증 정보를 사용하려면 다음 지침을 따릅니다.

      1. AWS Secret에서 보안 암호의 이름을 선택합니다.

      2. Populate를 선택하여 Secrets Manager에서 데이터베이스 연결 대화 상자에 있는 모든 값을 자동으로 채웁니다.

      Secrets Manager의 데이터베이스 보안 인증 사용에 대한 자세한 내용은 AWS Secrets Manager 에서 구성 AWS Schema Conversion Tool 섹션을 참조하세요.

    • IBMDb2 for z/OS 소스 데이터베이스 연결 정보를 수동으로 입력하려면 다음 지침을 사용하십시오.

      파라미터 작업
      [서버 이름]

      원본 데이터베이스 서버의 도메인 이름 시스템 (DNS) 이름 또는 IP 주소를 입력합니다.

      [Server port]

      소스 데이터베이스 서버에 연결하는 데 사용되는 포트를 입력합니다.

      위치

      액세스할 Db2 위치의 고유한 이름을 입력합니다.

      User namePassword

      소스 데이터베이스 서버에 연결하는 데 필요한 데이터베이스 보안 인증 정보를 입력합니다.

      AWS SCT 프로젝트에서 데이터베이스에 연결하도록 선택한 경우에만 암호를 사용하여 원본 데이터베이스에 연결합니다. 원본 데이터베이스의 암호가 노출되지 않도록 하기 위해 는 기본적으로 암호를 저장하지 AWS SCT 않습니다. AWS SCT 프로젝트를 닫았다가 다시 열면 필요에 따라 원본 데이터베이스에 연결하기 위해 암호를 입력하라는 메시지가 표시됩니다.

      사용: SSL

      Secure Sockets Layer (SSL) 를 사용하여 데이터베이스에 연결하려면 이 옵션을 선택하십시오. 해당하는 경우 SSL탭에 다음과 같은 추가 정보를 제공하십시오.

      • 트러스트 스토어: 인증서가 있는 트러스트 스토어의 위치입니다. 이 위치가 여기에 표시되도록 하려면 전역 설정에 추가해야 합니다.

      Store password

      AWS SCT SSL인증서와 데이터베이스 암호를 저장할 보안 저장소를 만듭니다. 이 옵션을 켜면 데이터베이스 암호를 저장하고 암호 입력 없이 빠르게 데이터베이스에 연결할 수 있습니다.

      Db2 for z/OS driver path

      소스 데이터베이스에 연결할 때 사용할 드라이버의 경로를 입력합니다. 자세한 내용은 에 대한 JDBC 드라이버 설치 AWS Schema Conversion Tool 단원을 참조하십시오.

      드라이버 경로를 전역 프로젝트 설정에 저장할 경우 드라이버 경로가 연결 대화 상자에 표시되지 않습니다. 자세한 내용은 전역 설정에 드라이버 경로 저장 단원을 참조하십시오.

  5. [연결 테스트] 를 선택하여 원본 데이터베이스에 연결할 AWS SCT 수 있는지 확인합니다.

  6. 연결을 선택하여 소스 데이터베이스에 연결합니다.

대상 SQL 데이터베이스로서의 My 권한

My를 대상으로 사용하는 데 필요한 권한은 다음과 같습니다. SQL

  • CREATE켜짐* . *

  • ALTER켜져 있음* . *

  • DROP켜져 있음* . *

  • INDEX켜져 있음* . *

  • REFERENCES켜져 있음* . *

  • SELECT켜져 있음* . *

  • CREATEVIEW아니오* . *

  • SHOWVIEW아니오* . *

  • TRIGGER켜져 있음* . *

  • CREATEROUTINE아니오* . *

  • ALTERROUTINE아니오* . *

  • EXECUTE켜져 있음* . *

  • SELECTmysql.proc에서

  • INSERT, 아니요 _ _. UPDATE AWS DB2ZOS EXT *

  • INSERTUPDATE, DELETE 아니오 AWS _ DB2ZOS _ EXT _DATA. *

  • CREATETEMPORARYTABLES아니요 AWS _ DB2ZOS _ EXT _DATA. *

다음 코드 예제를 사용하여 데이터베이스 사용자를 생성하고 권한을 부여할 수 있습니다.

CREATE USER 'user_name' IDENTIFIED BY 'your_password'; GRANT CREATE ON *.* TO 'user_name'; GRANT ALTER ON *.* TO 'user_name'; GRANT DROP ON *.* TO 'user_name'; GRANT INDEX ON *.* TO 'user_name'; GRANT REFERENCES ON *.* TO 'user_name'; GRANT SELECT ON *.* TO 'user_name'; GRANT CREATE VIEW ON *.* TO 'user_name'; GRANT SHOW VIEW ON *.* TO 'user_name'; GRANT TRIGGER ON *.* TO 'user_name'; GRANT CREATE ROUTINE ON *.* TO 'user_name'; GRANT ALTER ROUTINE ON *.* TO 'user_name'; GRANT EXECUTE ON *.* TO 'user_name'; GRANT SELECT ON mysql.proc TO 'user_name'; GRANT INSERT, UPDATE ON AWS_DB2ZOS_EXT.* TO 'user_name'; GRANT INSERT, UPDATE, DELETE ON AWS_DB2ZOS_EXT_DATA.* TO 'user_name'; GRANT CREATE TEMPORARY TABLES ON AWS_DB2ZOS_EXT_DATA.* TO 'user_name';

위 예제에서는 다음을 대체하십시오.user_name 사용자 이름으로 그런 다음 교체하세요.your_password 안전한 비밀번호를 사용하세요.

Amazon RDS for SQL My를 대상으로 사용하려면 log_bin_trust_function_creators 파라미터를 true로 설정하고 character_set_server to를 설정하십시오latin1. 이들 파라미터를 구성하려면 새 DB 파라미터 그룹을 생성하거나 기존 DB 파라미터 그룹을 수정해야 합니다.

Aurora My를 SQL 타겟으로 사용하려면 log_bin_trust_function_creators 파라미터를 true로 설정하고 to를 설정하십시오. character_set_server latin1 또한 lower_case_table_names 파라미터를 true로 설정합니다. 이들 파라미터를 구성하려면 새 DB 파라미터 그룹을 생성하거나 기존 DB 파라미터 그룹을 수정해야 합니다.

Postgre를 대상 SQL 데이터베이스로 사용할 수 있는 권한

Postgre를 대상으로 사용하려면 권한이 필요합니다SQL. AWS SCT CREATE ON DATABASE 각 대상 Postgre 데이터베이스에 이 권한을 부여해야 합니다. SQL

RDSPostgre용 Amazon을 SQL 대상으로 AWS SCT 사용하려면 권한이 필요합니다. rds_superuser

변환된 공개 동의어를 사용하려면 데이터베이스 기본 검색 경로를 "$user", public_synonyms, public으로 변경합니다.

다음 코드 예제를 사용하여 데이터베이스 사용자를 생성하고 권한을 부여할 수 있습니다.

CREATE ROLE user_name LOGIN PASSWORD 'your_password'; GRANT CREATE ON DATABASE db_name TO user_name; GRANT rds_superuser TO user_name; ALTER DATABASE db_name SET SEARCH_PATH = "$user", public_synonyms, public;

위 예제에서는 다음을 대체했습니다.user_name 사용자 이름으로 그런 다음 교체하세요.db_name 대상 데이터베이스의 이름으로 마지막으로, 바꾸세요 your_password 안전한 비밀번호를 사용하세요.

SQLPostgre에서는 스키마 소유자 또는 a만 스키마를 삭제할 superuser 수 있습니다. 소유자는 스키마 소유자가 일부 객체를 소유하지 않은 경우에도 스키마 및 이 스키마에 포함된 모든 객체를 삭제할 수 있습니다.

다른 사용자를 사용하여 대상 데이터베이스를 변환하고 다른 스키마를 적용할 때 스키마를 삭제할 수 없는 경우 오류 메시지가 AWS SCT 표시될 수 있습니다. 이 오류 메시지가 표시되지 않도록 하려면 superuser 역할을 사용하세요.

z/OS용 Db2에서 Postgre로의 변환 설정으로의 변환 설정 SQL

z/OS용 Db2를 Postgre로 변환 설정을 편집하려면 [설정] 을 선택한 다음 [SQL변환 설정] 을 선택합니다. 상단 목록에서 z/OS용 Db2를 선택한 다음 z/OS용 Db2 — Postgre 또는 z/OS용 Db2 — Amazon Aurora (Postgre 호환) SQL 를 선택합니다. SQL AWS SCT z/OS용 Db2를 Postgre로 변환하는 데 사용할 수 있는 모든 IBM 설정을 표시합니다. SQL

z/OS용 Db2에서 Postgre로의 변환 설정에는 다음과 같은 옵션이 포함됩니다SQL. AWS SCT

  • 변환된 코드에서 작업 항목이 포함된 설명의 수를 제한합니다.

    선택한 심각도 이상의 작업 항목에 대해 변환된 코드에 주석 추가에서 작업 항목의 심각도를 선택합니다. AWS SCT 선택한 심각도 이상의 작업 항목에 대해 변환된 코드에 설명을 추가합니다.

    예를 들어, 변환된 코드의 설명 수를 최소화하려면 오류만을 선택합니다. 변환된 코드의 모든 작업 항목에 대한 설명을 포함하려면 모든 메시지를 선택합니다.

  • 대상 데이터베이스의 제약 조건에 대해 고유한 이름을 생성합니다.

    SQLPostgre에서는 사용하는 모든 제약 조건 이름이 고유해야 합니다. AWS SCT 테이블 이름과 함께 제약 조건 이름에 접두사를 추가하여 변환된 코드에서 제약 조건의 고유한 이름을 생성할 수 있습니다. AWS SCT 가 제약 조건에 대해 고유한 이름을 생성하도록 하려면 Generate unique names for constraints를 선택합니다.

  • 변환된 코드에서 DML 명령문의 열 이름, 표현식 및 절 형식을 유지하기 위함입니다.

    AWS SCT DML명령문의 열 이름, 표현식 및 절 레이아웃을 소스 코드와 비슷한 위치 및 순서로 유지할 수 있습니다. 이렇게 하려면 명령문의 열 이름, 표현식 및 절 서식 유지에서 DML Yes를 선택합니다.

  • 변환 범위에서 테이블 파티션을 제외합니다.

    AWS SCT 변환 중에 소스 테이블의 모든 파티션을 건너뛸 수 있습니다. 이렇게 하려면 Exclude table partitions from the conversion scope를 선택합니다.

  • 증가에 따라 파티셔닝된 테이블에 대해 자동 파티셔닝을 사용합니다.

    데이터 마이그레이션의 경우 지정된 크기보다 큰 모든 테이블을 자동으로 AWS SCT 분할할 수 있습니다. 이 옵션을 사용하려면 Enforce partition of tables larger than을 선택하고 테이블 크기를 기가바이트 단위로 입력합니다. 다음으로 파티션 수를 입력합니다. AWS SCT 이 옵션을 켜면 원본 데이터베이스의 직접 액세스 스토리지 디바이스 (DASD) 크기를 고려합니다.

    AWS SCT 파티션 수를 자동으로 결정할 수 있습니다. 이렇게 하려면 Increase the number of partitions proportionally를 선택하고 최대 파티션 수를 입력합니다.

  • 동적 결과 세트를 refcursor 데이터 유형의 값 배열로 반환합니다.

    AWS SCT 동적 결과 집합을 반환하는 소스 프로시저를 추가 출력 매개 변수로 열린 리커서 배열을 포함하는 프로시저로 변환할 수 있습니다. 이렇게 하려면 Use an array of refcursors to return all dynamic result sets를 선택합니다.

  • 날짜 및 시간 값을 문자열 표현으로 변환하는 데 사용할 표준을 지정합니다.

    AWS SCT 지원되는 산업 형식 중 하나를 사용하여 날짜 및 시간 값을 문자열 표현으로 변환할 수 있습니다. 이렇게 하려면 Use string representations of date values 또는 Use string representations of time values를 선택합니다. 그런 다음, 다음 표준 중 하나를 선택합니다.

    • 국제 표준 기구 () ISO

    • IBM유럽 표준 (EUR)

    • IBMUSA표준 (USA)

    • 일본 산업 표준 기독교 시대 (JIS)