db2look을 사용하여 Db2에서 Amazon RDS for Db2로 데이터베이스 메타데이터 복사 - Amazon Relational Database Service

db2look을 사용하여 Db2에서 Amazon RDS for Db2로 데이터베이스 메타데이터 복사

db2look은 데이터 정의 언어(DDL) 파일, 객체, 권한, 구성, WLM 및 데이터베이스 레이아웃을 추출하는 기본 Db2 도구입니다. db2look을 사용하여 자체 관리형 Db2 데이터베이스의 데이터베이스 메타데이터를 Amazon RDS for Db2 데이터베이스로 복사할 수 있습니다. 자세한 내용은 IBM Db2 설명서의 db2look을 사용한 데이터베이스 모방을 참조하세요.

데이터베이스 메타데이터를 복사하려면
  1. 자체 관리형 Db2 시스템에서 db2look 도구를 실행하여 DDL 파일을 추출합니다. 다음 예제에서 database_name을 Db2 데이터베이스 이름으로 바꿉니다.

    db2look -d database_name -e -l -a -f -wlm -cor -createdb -printdbcfg -o db2look.sql
  2. 클라이언트 머신이 소스(자체 관리형 Db2) 데이터베이스 및 RDS for Db2 DB 인스턴스에 액세스할 수 있는 경우 원격 인스턴스에 직접 연결하여 클라이언트 머신에 db2look.sql 파일을 생성할 수 있습니다. 그런 다음 원격 자체 관리형 Db2 인스턴스를 카탈로그화합니다.

    1. 노드를 카탈로그화합니다. 다음 예제에서 dns_ip_addressport를 자체 관리형 Db2 데이터베이스의 DNS 이름 또는 IP 주소 및 포트 번호로 대체합니다.

      db2 catalog tcpip node srcnode REMOTE dns_ip_address server port
    2. 데이터베이스를 카탈로그화합니다. 다음 예제에서 source_database_namesource_database_alias를 자체 관리형 Db2 데이터베이스의 이름과 이 데이터베이스에 사용할 별칭으로 바꿉니다.

      db2 catalog database source_database_name as source_database_alias at node srcnode \ authentication server_encrypt
    3. 소스 데이터베이스에 연결합니다. 다음 예제에서 source_database_alias, user_id, user_password를 이전 단계에서 만든 별칭과 자체 관리형 Db2 데이터베이스의 사용자 ID 및 암호로 대체합니다.

      db2look -d source_database_alias -i user_id -w user_password -e -l -a -f -wlm \ -cor -createdb -printdbcfg -o db2look.sql
  3. 클라이언트 머신에서 원격 자체 관리형 Db2 데이터베이스에 액세스할 수 없는 경우 db2look.sql 파일을 클라이언트 머신에 복사합니다. 그런 다음 RDS for Db2 DB 인스턴스를 카탈로그화합니다.

    1. 노드를 카탈로그화합니다. 다음 예제에서 dns_ip_addressport를 RDS for Db2 DB 인스턴스의 DNS 이름 또는 IP 주소 및 포트 번호로 대체합니다.

      db2 catalog tcpip node remnode REMOTE dns_ip_address server port
    2. 데이터베이스를 카탈로그화합니다. 다음 예제에서 rds_database_namerds_database_alias를 RDS for Db2 데이터베이스의 이름과 이 데이터베이스에 사용할 별칭으로 바꿉니다.

      db2 catalog database rds_database_name as rds_database_alias at node remnode \ authentication server_encrypt
    3. RDS for Db2를 관리하는 관리 데이터베이스를 카탈로그화합니다. 데이터를 저장하는 데는 이 데이터베이스를 사용할 수 없습니다.

      db2 catalog database rdsadmin as rdsadmin at node remnode authentication server_encrypt
  4. 버퍼 풀과 테이블스페이스를 생성합니다. 관리자는 버퍼 풀이나 테이블스페이스를 생성할 권한이 없습니다. 하지만 Amazon RDS 저장 프로시저를 사용하여 생성할 수는 있습니다.

    1. db2look.sql 파일에서 버퍼 풀과 테이블스페이스의 이름과 정의를 찾습니다.

    2. RDS for Db2 DB 인스턴스의 마스터 사용자 이름과 마스터 암호를 사용하여 Amazon RDS에 연결합니다. 다음 예제에서 master_usernamemaster_password를 사용자 자체 정보로 대체합니다.

      db2 connect to rdsadmin user master_username using master_password
    3. rdsadmin.create_bufferpool을 호출하여 버퍼 풀을 생성합니다. 자세한 내용은 rdsadmin.create_bufferpool 단원을 참조하십시오.

      db2 "call rdsadmin.create_bufferpool( 'database_name', 'buffer_pool_name', buffer_pool_size, 'immediate', 'automatic', page_size, number_block_pages, block_size)"
    4. rdsadmin.create_tablespace를 호출하여 테이블스페이스를 생성합니다. 자세한 내용은 rdsadmin.create_tablespace 단원을 참조하십시오.

      db2 "call rdsadmin.create_tablespace( 'database_name', 'tablespace_name', 'buffer_pool_name', tablespace_initial_size, tablespace_increase_size, 'tablespace_type')"
    5. 추가하려는 각 추가 버퍼 풀 또는 테이블스페이스에 대해 c 또는 d 단계를 반복합니다.

    6. 연결을 종료합니다.

      db2 terminate
  5. 표와 객체를 생성합니다.

    1. RDS for Db2 DB 인스턴스의 마스터 사용자 이름과 마스터 암호를 사용하여 RDS for Db2 데이터베이스에 연결합니다. 다음 예제에서 rds_database_name, master_username, master_password를 사용자 자체 정보로 바꿉니다.

      db2 connect to rds_database_name user master_username using master_password
    2. db2look.sql 파일을 실행합니다.

      db2 -tvf db2look.sql
    3. 연결을 종료합니다.

      db2 terminate