INSERT 명령을 사용하여 Db2에서 Amazon RDS for Db2로 데이터 가져오기
자체 관리형 Db2 서버에서 INSERT
명령을 사용하여 Amazon RDS for Db2 데이터베이스에 데이터를 삽입할 수 있습니다. 이 마이그레이션 방식에서는 원격 RDS for Db2 DB 인스턴스의 별명을 사용합니다. 자체 관리형 Db2 데이터베이스(소스)는 RDS for Db2 데이터베이스(대상)에 연결할 수 있어야 합니다.
중요
INSERT
명령 메서드는 소형 표를 마이그레이션하는 데 유용합니다. 자체 관리형 Db2 데이터베이스와 RDS for Db2 데이터베이스 간의 네트워크 대역폭이 제한적인 경우 다른 마이그레이션 방법을 사용하는 것이 좋습니다. 자세한 내용은 기본 Db2 도구를 사용하여 Db2에서 Amazon RDS for Db2로 데이터 마이그레이션 단원을 참조하십시오.
자체 관리형 Db2 데이터베이스의 데이터를 RDS for Db2 데이터베이스로 복사하려면
-
자체 관리형 Db2 인스턴스에서 RDS for Db2 DB 인스턴스를 카탈로그화합니다.
-
노드를 카탈로그화합니다. 다음 예제에서
dns_ip_address
및port
를 자체 관리형 Db2 데이터베이스의 DNS 이름 또는 IP 주소 및 포트 번호로 대체합니다.db2 catalog tcpip node remnode REMOTE
dns_ip_address
SERVERport
-
데이터베이스를 카탈로그화합니다. 다음 예제에서
rds_database_name
을 RDS for Db2 DB 인스턴스의 데이터베이스 이름으로 바꿉니다.db2 catalog database
rds_database_name
as remdb at node remnode \ authentication server_encrypt
-
-
자체 관리형 Db2 인스턴스에서 페더레이션을 활성화합니다. 다음 예제에서
source_database_name
을 자체 관리형 Db2 인스턴스의 데이터베이스 이름으로 바꿉니다.db2 update dbm cfg using FEDERATED YES
source_database_name
-
RDS for Db2 DB 인스턴스에 표를 생성합니다.
-
노드를 카탈로그화합니다. 다음 예제에서
dns_ip_address
및port
를 자체 관리형 Db2 데이터베이스의 DNS 이름 또는 IP 주소 및 포트 번호로 대체합니다.db2 catalog tcpip node srcnode REMOTE
dns_ip_address
serverport
-
데이터베이스를 카탈로그화합니다. 다음 예제에서
source_database_name
및source_database_alias
를 자체 관리형 Db2 데이터베이스의 이름과 이 데이터베이스에 사용할 별칭으로 바꿉니다.db2 catalog database
source_database_name
assource_database_alias
at node srcnode \ authentication server_encrypt
-
-
소스 데이터베이스에 연결합니다. 다음 예제에서
source_database_alias
,user_id
,user_password
를 이전 단계에서 만든 별칭과 자체 관리형 Db2 데이터베이스의 사용자 ID 및 암호로 대체합니다.db2look -d
source_database_alias
-iuser_id
-wuser_password
-e -l -a -f -wlm \ -cor -createdb -printdbcfg -o db2look.sql -
페더레이션을 설정하고 자체 관리형 Db2 인스턴스에서 RDS for Db2 데이터베이스 표의 별명을 생성합니다.
-
로컬 데이터베이스에 연결합니다. 다음 예제에서
source_database_name
을 자체 관리형 Db2 인스턴스의 데이터베이스 이름으로 바꿉니다.db2 connect to
source_database_name
-
Db2 데이터 소스에 액세스하기 위한 래퍼를 생성합니다.
db2 create wrapper drda
-
페더레이션된 데이터베이스에서 데이터 소스를 정의합니다. 다음 예제에서
admin
및admin_password
를 자체 관리형 Db2 인스턴스의 보안 인증 정보로 대체합니다.rds_database_name
을 RDS for Db2 DB 인스턴스의 데이터베이스 이름으로 바꿉니다.db2 "create server rdsdb2 type DB2/LUW version '11.5.9.0' \ wrapper drda authorization "
admin
" password "admin_password
" \ options( dbname 'rds_database_name
', node 'remnode')" -
두 데이터베이스의 사용자를 매핑합니다. 다음 예제에서
master_username
및master_password
를 RDS for Db2 DB 인스턴스의 보안 인증 정보로 대체합니다.db2 "create user mapping for user server rdsdb2 \ options (REMOTE_AUTHID '
master_username
', REMOTE_PASSWORD 'master_password
')" -
RDS for Db2 서버와의 연결을 확인합니다.
db2 set passthru rdsdb2
-
원격 RDS for Db2 데이터베이스에서 표의 별명을 생성합니다. 다음 예제에서
NICKNAME
및TABLE_NAME
을 표의 별명과 표 이름으로 바꿉니다.db2 create nickname REMOTE.
NICKNAME
for RDSDB2.TABLE_NAME.
NICKNAME
-
-
원격 RDS for Db2 데이터베이스 표에 데이터를 삽입합니다. 자체 관리형 Db2 인스턴스의 로컬 표에 있는
select
문에 별명을 사용합니다. 다음 예제에서NICKNAME
및TABLE_NAME
을 표의 별명과 표 이름으로 바꿉니다.db2 "INSERT into REMOTE.
NICKNAME
select * from RDS2DB2.TABLE_NAME.NICKNAME
"