외부 PostgreSQL 데이터베이스 업그레이드

PostgreSQL 데이터베이스 엔진을 업그레이드할 때는 PostgreSQL 커뮤니티와 클라우드 제공업체에서 권장하는 모든 단계를 따르는 것이 중요합니다. PostgreSQL 데이터베이스의 두 가지 종류의 업그레이드가 있습니다.

  • 마이너 버전 업그레이드: 이는 버그 및 보안 수정 사항만 포함합니다. 기존 응용 프로그램 데이터베이스 모델과 항상 하위 호환성이 있습니다.

    마이너 버전 업그레이드 프로세스는 PostgreSQL 이진 파일을 교체하고 데이터베이스 서비스를 다시 시작하는 것으로 이루어집니다. 데이터 디렉터리는 변경되지 않습니다.

  • 메이저 버전 업그레이드: 이는 내부 저장 형식과 데이터베이스 카탈로그를 변경합니다. 결과적으로 쿼리 옵티마이저에서 사용하는 객체 통계가 새 버전으로 전송되지 않으며 ANALYZE로 다시 작성해야 합니다.

    문서화된 메이저 버전 업그레이드 프로세스를 따르지 않으면 데이터베이스 서버에서 성능 저하와 높은 CPU 사용량이 발생할 수 있습니다.

모든 주요 클라우드 제공업체는 pg_upgrade 유틸리티를 사용하여 데이터베이스 인스턴스의 메이저 버전 업그레이드를 지원합니다. 그러나 성능 저하나 데이터베이스 장애의 위험을 줄이기 위해 업그레이드 전과 후 단계를 지켜야 합니다.

외부 데이터베이스 플랫폼의 메이저 버전 업그레이드 단계를 주의 깊게 읽어보세요:

메이저 버전 업그레이드 후 반드시 ANALYZE 실행

메이저 버전 업그레이드 후 옵티마이저 통계가 pg_upgrade에 의해 전송되지 않으므로 ANALYZE 작업을 실행하여 pg_statistic 테이블을 새로 고칠 필요가 있습니다. 이는 업그레이드된 PostgreSQL 서비스/인스턴스/클러스터의 모든 데이터베이스에서 수행되어야 합니다.

ANALYZE 작업을 가속화하려면 vacuumdb 유틸리티를 사용하여 --analyze-only --jobs=njobsANALYZE 명령을 병렬로 실행하여 njobs 명령을 동시에 실행하세요.