지원되는 PostgreSQL 확장 버전 - Amazon Relational Database Service

지원되는 PostgreSQL 확장 버전

RDS for PostgreSQL는 여러 PostgreSQL 확장을 지원합니다. PostgreSQL 커뮤니티에서는 이러한 확장을 모듈이라고 부르기도 합니다. 여기에서 확장이란 PostgreSQL 엔진에서 제공하는 기능이 더욱 확장된 것을 말합니다. 해당 PostgreSQL 버전의 기본 DB 파라미터 그룹에서 Amazon RDS가 지원하는 확장 기능 목록을 확인할 수 있습니다. 또한 다음 예제에서처럼 psql 파라미터를 표시하면 rds.extensions을 사용하여 현재 확장 기능 목록을 확인할 수 있습니다.

SHOW rds.extensions;
참고

rds.extensions에서 psql 파라미터를 사용하면 마이너 버전 릴리스에서 추가된 파라미터가 잘못 표시될 수 있습니다.

RDS for PostgreSQL 13부터 특정 확장은 rds_superuser 이외의 데이터베이스 사용자가 설치할 수 있습니다. 신뢰할 수 있는 확장이라고 합니다. 자세한 내용은 PostgreSQL 신뢰할 수 있는 확장을 참조하십시오.

RDS for PostgreSQL의 특정 버전에서 rds.allowed_extensions 파라미터를 지원합니다. 이 파라미터를 사용하면 RDS for PostgreSQL DB 인스턴스에 설치할 수 있는 확장을 rds_superuser 제한할 수 있습니다. 자세한 내용은 PostgreSQL 확장의 설치 제한을 참조하세요.

사용 가능한 각 RDS for PostgreSQL 버전에서 지원되는 PostgreSQL 확장 및 버전 목록은 Amazon RDS for PostgreSQL 릴리스 정보Amazon RDS에서 지원되는 PostgreSQL 확장을 참조하세요.

PostgreSQL 확장의 설치 제한

PostgreSQL DB 인스턴스에 설치할 수 있는 확장을 제한할 수 있습니다. 기본적으로 이 파라미터는 설정되지 않으므로 사용자에게 권한이 있는 경우 지원되는 확장 프로그램을 추가할 수 있습니다. 이렇게 하려면 rds.allowed_extensions 파라미터를 쉼표로 구분된 확장 이름의 문자열로 설정합니다. 이 파라미터에 확장 프로그램 목록을 추가하면 RDS for PostgreSQL DB 인스턴스가 사용할 수 있는 확장을 명시적으로 식별할 수 있습니다. 그런 다음 해당 확장만 PostgreSQL DB 인스턴스에 설치할 수 있습니다.

rds.allowed_extensions 파라미터의 기본 문자열은 '*'입니다. 즉, 해당 엔진 버전에 사용할 수 있는 모든 확장을 설치할 수 있습니다. rds.allowed_extensions 파라미터는 동적 파라미터이므로 변경해도 데이터베이스를 다시 시작할 필요가 없습니다.

rds.allowed_extensions 파라미터를 사용하려면 PostgreSQL DB 인스턴스 엔진이 다음 버전 중 하나여야 합니다.

  • 모든 PostgreSQL 16 버전

  • PostgreSQL 15 이상의 모든 버전

  • PostgreSQL 14 이상의 모든 버전

  • PostgreSQL 13.3 이상의 마이너 버전

  • PostgreSQL 12.7 이상의 마이너 버전

허용되는 확장 설치를 확인하려면 다음 psql 명령을 사용합니다.

postgres=> SHOW rds.allowed_extensions; rds.allowed_extensions ------------------------ *

확장이 rds.allowed_extensions 파라미터의 목록에서 제외되기 전에 설치된 경우, 해당 확장은 정상적으로 사용할 수 있으며 ALTER EXTENSIONDROP EXTENSION 같은 명령이 계속 작동합니다. 하지만 확장이 제한되고 나면 제한된 확장에 대한 CREATE EXTENSION 명령이 실패합니다.

CREATE EXTENSION CASCADE를 사용한 확장 종속 구성 요소 설치도 제한됩니다. 확장과 해당 종속 구성 요소는 rds.allowed_extensions에 지정해야 합니다. 확장 종속 구성 요소 설치가 실패하면 전체 CREATE EXTENSION CASCADE 문이 실패합니다.

확장이 rds.allowed_extensions 파라미터에 포함되어 있지 않은 경우, 해당 확장을 설치하려고 하면 다음과 같은 오류가 표시됩니다.

ERROR: permission denied to create extension "extension-name" HINT: This extension is not specified in "rds.allowed_extensions".

PostgreSQL 신뢰할 수 있는 확장

대부분의 PostgreSQL 확장을 설치하려면 rds_superuser 권한이 필요합니다. PostgreSQL 13에서는 rds_superuser 권한을 일반 사용자에게 부여해야 할 필요성을 줄이는 신뢰할 수 있는 확장 기능이 도입되었습니다. 이 기능을 사용하면 현재 데이터베이스에 대한 CREATE 권한이 있는 사용자가 rds_superuser 역할 없이도 여러 확장을 설치할 수 있습니다. 자세한 내용은 PostgreSQL 설명서에서 SQL CREATE EXTENSION 명령을 참조하세요.

다음 목록에는 현재 데이터베이스에 대한 CREATE 권한이 있는 사용자가 rds_superuser역할 없이 설치할 수 있는 확장이 나열되어 있습니다.

사용 가능한 각 RDS for PostgreSQL 버전에서 지원되는 PostgreSQL 확장 및 버전 목록은 Amazon RDS for PostgreSQL 릴리스 정보Amazon RDS에서 지원되는 PostgreSQL 확장을 참조하세요.