Amazon RDS DB 인스턴스로 데이터를 가져오려면 어떻게 해야 하나요?

6분 분량
0

가동 중지 시간을 최소화하면서 기존 데이터베이스의 데이터를 Amazon Relational Database Service(RDS) 인스턴스로 가져오고 싶습니다.

간략한 설명

기존 데이터베이스에서 Amazon RDS DB 인스턴스로 데이터를 가져오려면 다음 단계를 완료하세요.

  1. 소스 데이터베이스에서 데이터 내보내기
  2. 내보낸 데이터 업로드
  3. 업로드한 데이터를 Amazon RDS DB 인스턴스로 가져오기

참고: 데이터 가져오기 프로세스에는 다양한 길이의 서버 다운타임이 필요합니다. 가동 중지 시간은 가져오는 소스 데이터베이스의 크기에 따라 달라집니다. 또한 다운타임 길이는 DB 인스턴스에서 사용하는 데이터베이스 엔진 유형에 따라 달라집니다.

해결 방법

Amazon RDS DB 인스턴스로 데이터를 가져오려면 다음 단계를 완료하세요.

소스 데이터베이스에서 데이터 내보내기

기존 데이터베이스의 복사본을 만들려면 데이터베이스의 소스 엔진에 따라 다음 단계를 완료합니다.

Amazon RDS for MySQL

기존 MySQL 데이터베이스의 복사본을 생성하려면 mysqldumpmysql과 같은 MySQL 도구를 사용하세요. 자세한 내용은 MySQL 웹 사이트에서 mysqldump - 데이터베이스 백업 프로그램mysql - MySQL 명령줄 클라이언트를 참조하세요.

또 다른 방법은 복제를 사용하여 소스 MySQL 데이터베이스에서 Amazon RDS로 데이터를 가져오는 것입니다. 자세한 내용은 MySQL 웹 사이트에서 Replication을 참조하세요.

Amazon RDS for PostgreSQL

기존 PostgreSQL 데이터베이스의 복사본을 생성하려면 pg_dump, psqlcopy 명령과 같은 PostgreSQL 도구를 사용합니다. 자세한 내용은 PostgreSQL 웹 사이트에서 pg_dump, psqlcopy을 참조하세요.

Amazon RDS for Oracle

기존 Oracle 데이터베이스에서 Amazon RDS로 데이터를 내보내려면 Oracle SQL DeveloperOracle Datapump와 같은 Oracle 도구를 사용합니다.

소규모 데이터베이스의 경우 Oracle 웹 사이트에서 Database copy using Oracle SQL Developer를 참조하세요.

대규모 데이터베이스의 경우 데이터베이스 링크를 사용하여 인스턴스에 정의된 디렉터리로 데이터 펌프 내보내기 및 가져오기를 수행하세요. 내보내기 파라미터를 지정하려면 데이터베이스 링크가 필요합니다. 자세한 내용은 Oracle 웹 사이트에서 Database Links, Data Pump Export, Data Pump ImportSpecifying Export Parameters를 참조하세요.

Amazon RDS for SQL Server

SQL Server 데이터베이스를 내보내려면 Microsoft SQL Server 데이터베이스에 대한 기본 백업 및 복원을 사용합니다. 이 방법의 경우 .bak 파일을 사용합니다.

또 다른 방법은 데이터베이스를 백업하고 Amazon Simple Storage Service(S3)에 백업을 저장한 다음 Amazon RDS에 백업을 복원하는 것입니다.

Amazon Aurora MySQL

외부 MySQL 데이터베이스에서 Amazon Aurora MySQL DB 클러스터로 데이터를 내보내려면 mysqldumpmydumper와 같은 기본 도구를 사용합니다. 또한 가동 중지 시간을 줄이려면 Aurora MySQL 호환 바이너리 로그 복제를 사용하세요.

MySQL 데이터를 Aurora MySQL DB 클러스터로 마이그레이션하는 또 다른 방법은 DB 인스턴스의 스냅샷 또는 Aurora 읽기 전용 복제본을 사용하는 것입니다.

참고: 모든 마이그레이션 옵션의 경우 모든 소스 테이블이 동적 행 형식의 InnoDB 스토리지 엔진으로 변환되어야 합니다. 이렇게 하면 마이그레이션 속도가 빨라집니다. 자세한 내용은 데이터베이스를 Amazon Aurora로 마이그레이션을 참조하세요.

내보낸 데이터 업로드

Amazon RDS for MySQL

내보낸 데이터를 업로드하려면 Amazon Elastic Compute Cloud(Amazon EC2) 또는 Amazon S3에 업로드하세요:

Amazon RDS for PostgreSQL

내보낸 데이터를 업로드하려면 Amazon EC2 또는 Amazon S3에 업로드합니다.

Amazon RDS for Oracle

내보낸 데이터를 Amazon RDS for Oracle DB 인스턴스에 업로드하려면 Amazon S3 또는 데이터베이스 링크와 함께 Oracle Data Pump를 사용합니다.

자세한 내용은 Oracle Data Pump 개요를 참조하세요.

Amazon RDS for SQL Server

내보낸 데이터를 SQL Server 데이터베이스에서 Amazon S3로 업로드하려면 기본 백업 및 복원을 위한 설정을 참조하세요.

업로드한 데이터를 Amazon RDS DB 인스턴스로 가져오기

Amazon RDS for MySQL

MySQL 데이터베이스에서 업로드한 데이터를 가져오려면 MySQL 웹 사이트에서 mysqldump, mysql, replication과 같은 도구를 사용합니다. MySQL 버전 5.7.9 이상을 사용하는 경우 외부 Amazon RDS DB 인스턴스로 데이터를 복제할 수 있습니다. 다중 스레드 마이그레이션에 대해서는 mydumper 및 myloader를 사용한 다중 스레드 마이그레이션을 참조하세요.

자세한 내용은 다운타임을 줄인 Amazon RDS MariaDB 또는 MySQL 데이터베이스로 데이터 가져오기를 참조하세요.

Amazon RDS for MariaDB

MariaDB 데이터베이스에서 업로드된 데이터를 가져오려면 MariaDB 웹 사이트에서 mysqldump, mysql, replication과 같은 도구를 사용합니다. 대규모 데이터베이스 마이그레이션의 경우 mydumpermyloader를 사용하여 다중 스레드 덤프 및 가져오기를 수행하세요. 다중 스레드 마이그레이션에 대한 자세한 내용은 mydumper 및 myloader를 사용한 다중 스레드 마이그레이션을 참조하세요.

자세한 내용은 다운타임을 줄인 Amazon RDS MariaDB 또는 MySQL 데이터베이스로 데이터 가져오기를 참조하세요.

Amazon RDS for PostgreSQL

PostgreSQL 데이터베이스에서 업로드된 데이터를 가져오려면 psql을 사용하여 DB 인스턴스에서 데이터베이스를 생성하고 데이터를 로드합니다. 자세한 내용은 psql을 사용하여 DB 인스턴스에서 데이터베이스를 만들고 데이터 로드를 참조하세요.

Amazon S3 버킷에서 업로드된 데이터를 가져오려면 aws_s3 확장자의 table_import_from_s3 함수를 사용합니다. 자세한 내용은 Amazon S3에서 PostgreSQL용 RDS DB 인스턴스로 데이터 가져오기를 참조하세요.

Amazon RDS for Oracle

Oracle 데이터베이스에서 업로드된 데이터를 가져오려면 Oracle Data Pump 및 impdp 명령줄 클라이언트를 사용합니다. Oracle Data Pump에 대한 자세한 내용은 Oracle Data Pump 개요를 참조하세요. impdp 명령에 대한 자세한 내용은 Oracle 웹 사이트에서 Starting Oracle Data Pump Import를 참조하세요.

Amazon RDS for SQL Server

Amazon S3의 SQL Server 데이터베이스에서 업로드된 데이터를 가져오려면 rds_restore_database 절차를 사용합니다. 자세한 내용은 데이터베이스 복원을 참조하세요.

데이터 가져오기 가이드라인

일반 데이터 가져오기 가이드라인

다음 가이드라인은 모든 Amazon RDS 데이터 가져오기 및 내보내기 작업에 적용됩니다.

  • 압축 및 다중 스레드를 사용하여 데이터를 병렬로 로드 및 언로드합니다. 많은 양의 데이터를 병렬로 로드하는 경우 데이터 로드 프로세스 중에 클라이언트 컴퓨터에 충분한 리소스가 있는지 확인하세요.
  • 대용량 데이터 로드의 성능을 개선하려면 Amazon RDS DB 인스턴스의 백업 보존을 0으로 설정하여 자동 백업을 해제합니다. 이 변경 사항을 적용하려면 Amazon RDS DB 인스턴스를 재부팅해야 합니다. 데이터 로드가 완료되면 자동화된 백업을 켭니다. 모범 사례는 데이터 로드의 중요한 단계에서 DB 스냅샷을 생성하는 것입니다. 이렇게 하면 필요한 경우 ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_RestoreFromSnapshot.html)스냅샷에서 인스턴스를 복원[할 수 있습니다.

**참고:모범 사례는 ** 프로덕션 인스턴스에 대한 백업을 해제하지 않는 것입니다. 백업을 끄면 특정 시점으로 복구 기능을 사용할 수 없고, 이전에 자동화된 DB 인스턴스의 스냅샷이 삭제되며, 삭제된 스냅샷을 복구할 수 없습니다.

  • 다중 가용 영역(AZ) 데이터 로드의 쓰기 작업으로 인한 오버헤드를 줄이려면 다중 AZ를 해제합니다.

참고: 모든 프로덕션 Amazon RDS DB 인스턴스에 다중 AZ를 사용하는 것이 모범 사례입니다. 데이터 로드가 완료되는 즉시 다중 AZ가 켜져 있는지 확인하세요.

소스 데이터베이스 데이터 가져오기 가이드라인

온프레미스 환경에서 AWS로 데이터를 가져오려면 AWS Database Migration Service(AWS DMS)를 사용하세요. AWS DMS는 가동 중단 시간을 최소화하면서 동종 및 이기종 마이그레이션을 제공합니다. AWS DMS에는 다음과 같은 마이그레이션 유형이 있습니다.

자세한 내용은 데이터베이스 마이그레이션 단계별 연습을 참조하세요.

관련 정보

Amazon RDS의 모범 사례

복제를 사용하여 MySQL DB 인스턴스에서 데이터 내보내기