클라이언트 머신을 사용한 LOAD 명령 - Amazon Relational Database Service

클라이언트 머신을 사용한 LOAD 명령

LOAD CLIENT 명령을 사용하여 파일의 데이터를 RDS for Db2 서버로 로드할 수 있습니다. Amazon RDS for Db2 서버에는 SSH 연결이 없으므로, 자체 관리형 Db2 서버 또는 Db2 클라이언트 머신에서 LOAD CLIENT 명령을 사용할 수 있습니다.

중요

LOAD 명령 메서드는 소형 표를 마이그레이션하는 데 유용합니다. 클라이언트와 RDS for Db2 사이의 네트워크 대역폭이 제한적인 경우 다른 마이그레이션 방법을 사용하는 것이 좋습니다. 자세한 내용은 기본 Db2 도구 섹션을 참조하세요.

데이터 파일에 대형 객체 파일 이름에 대한 참조가 포함된 경우 Db2 서버에 대형 객체(LOB)가 있어야 하므로, LOAD 명령이 작동하지 않습니다. 클라이언트 머신에서 RDS for Db2 서버로 LOB를 로드하려고 하면 SQL3025N 오류가 발생합니다. 대신 IMPORT 명령을 사용하세요.

RDS for Db2 서버로 데이터를 로드하려면
  1. IBM Db2 Data Management Console을 사용하여 클라이언트 머신에 로그인합니다. 자세한 내용은 IBM Db2 Data Management Console을 사용하여 RDS for Db2 DB 인스턴스에 연결 섹션을 참조하세요.

  2. 클라이언트 머신에 있는 RDS for 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
  4. 자체 관리형 Db2 시스템에서 EXPORT 명령을 사용하여 데이터 파일을 생성합니다. 다음 예제에서 directory를 데이터 파일이 있는 클라이언트 머신의 디렉터리로 바꿉니다. file_nameTABLE_NAME을 데이터 파일 이름 및 표 이름으로 바꿉니다.

    db2 "export to /directory/file_name.txt of del modified by coldel\| \ select * from TPCH.TABLE_NAME"
  5. RDS for Db2 DB 인스턴스의 마스터 사용자 이름과 마스터 암호를 사용하여 RDS for Db2 데이터베이스에 연결합니다. 다음 예제에서 rds_database_alias, master_username, master_password를 사용자 자체 정보로 바꿉니다.

    db2 connect to rds_database_alias user master_username using master_password
  6. LOAD 명령을 사용하여 클라이언트 머신의 파일에서 원격 RDS for Db2 데이터베이스로 데이터를 로드합니다. 자세한 내용은 IBM Db2 설명서의 LOAD 명령을 참조하세요. 다음 예제에서 directory를 데이터 파일이 있는 클라이언트 머신의 디렉터리로 바꿉니다. file_nameTABLE_NAME을 데이터 파일 이름 및 표 이름으로 바꿉니다.

    db2 "LOAD CLIENT from /directory/file_name.txt \ modified by coldel\| replace into TPCH.TABLE_NAME \ nonrecoverable without prompting"
  7. 연결을 종료합니다.

    db2 terminate