기본 PostgreSQL 클라이언트 애플리케이션 - AWS 권장 가이드

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

기본 PostgreSQL 클라이언트 애플리케이션

pg_dump, pg_dumpall 및 pg_restore를 포함한 오프라인 마이그레이션에 기본 PostgreSQL 클라이언트 애플리케이션을 사용할 수 있습니다. pg_dump 유틸리티는 PostgreSQL 데이터베이스를 백업하기 위한 것입니다. pg_dump를 사용하여 일관된 백업을 만들고 단일 데이터베이스를 백업할 수 있습니다. 클러스터의 모든 데이터베이스(예: 역할 및 테이블스페이스)에 공통적인 글로벌 객체를 백업하려면 pg_dumpall을 사용합니다. 슈퍼 사용자만 전체 덤프를 수행할 수 있으므로 pg_dump 유틸리티를 슈퍼 사용자로 실행하는 것이 좋습니다. 또한 pg_dump 유틸리티는 작업 옵션(덤프 병렬 실행용)과 백업을 수행할 때 디렉터리 형식을 사용하는 등 백업 프로세스를 최적화하는 옵션을 제공합니다. 자세한 내용은 PostgreSQL 설명서의 pg_dump 페이지의 옵션 섹션을 참조하세요.

pg_restore 유틸리티는 pg_dump에서 생성한 아카이브에서 PostgreSQL 데이터베이스를 복원하기 위한 것입니다. 사용자 지정 또는 디렉터리 형식으로 pg_dump를 사용하는 경우 pg_restore 유틸리티를 병렬 모드로 실행할 수 있습니다. pg_restore의 성능을 높이기 위해 다음 파라미터를 조정할 수 있습니다.

  • 요구 사항에 맞게 shared_buffers를 설정하고 인덱스 생성 속도를 높이maintenance_work_mem도록를 높입니다.

  • 광범위한 로깅, autovacuum 데몬 및를 끕니다full_page_writes.

  • (선택 사항) 스키마를 백업 및 복원하고 데이터 전용 덤프 및 복원을 사용합니다. 이 방법을 사용하는 경우 disable-triggers 옵션을 사용하여 성능을 개선할 수 있습니다.

대상 EC2 인스턴스에서 pg_dump 및 pg_restore를 실행할 수 있습니다. 속도와 성능을 높이려면 AWS Direct Connect를 사용하는 것이 좋습니다. 마지막으로 백업 파일을 위한 스토리지가 충분한지 확인합니다.

아키텍처

다음 다이어그램은 기본 PostgreSQL 클라이언트 애플리케이션을 사용하여 온프레미스 PostgreSQL 데이터베이스를 AWS 클라우드로 마이그레이션하기 위한 아키텍처를 보여줍니다.

네이티브 PostgreSQL 클라이언트 애플리케이션 아키텍처

이 다이어그램은 다음 워크플로를 보여줍니다.

  1. pg_dump를 사용하여 백업을 수행합니다.

  2. EC2 인스턴스를 생성하고 인스턴스에 PostgreSQL을 설치합니다.

  3. 덤프 파일을 Amazon EC2에 복사합니다.

  4. pg_restore를 사용하여 백업 파일을 복원합니다.

제한 사항

마이그레이션을 시작하기 전에 기본 PostgreSQL 클라이언트 애플리케이션을 사용할 때 다음과 같은 제한 사항을 고려하는 것이 좋습니다.

  • 덤프 및 복원은 더 큰 데이터베이스(즉, 300GB 이상의 데이터베이스)에 시간이 많이 걸릴 수 있습니다.

  • 이 옵션을 사용하려면 전체 데이터베이스 가동 중지 시간이 필요합니다.

  • 백업을 수행한 다음 Amazon EC2에 백업을 복사하려면 서버에 상당한 양의 디스크 공간이 필요합니다.