지원되는 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 EXTENSION
및 DROP
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
역할 없이 설치할 수 있는 확장이 나열되어 있습니다.
-
bool_plperl
-
jsonb_plperl
사용 가능한 각 RDS for PostgreSQL 버전에서 지원되는 PostgreSQL 확장 및 버전 목록은 Amazon RDS for PostgreSQL 릴리스 정보의 Amazon RDS에서 지원되는 PostgreSQL 확장을 참조하세요.