

# Amazon RDS for PostgreSQL로 PostgreSQL 확장 사용
<a name="Appendix.PostgreSQL.CommonDBATasks.Extensions"></a>

다양한 확장 프로그램 및 모듈을 설치하여 PostgreSQL의 기능을 확장할 수 있습니다. 예를 들어 공간 데이터로 작업하려면 PostGIS 확장을 설치하고 사용할 수 있습니다. 자세한 내용은 [PostGIS 확장을 사용하여 공간 데이터 관리](Appendix.PostgreSQL.CommonDBATasks.PostGIS.md) 섹션을 참조하세요. 또 다른 예로, 매우 큰 테이블의 데이터 입력을 개선하려는 경우 `pg_partman` 확장을 사용하여 데이터 분할을 고려할 수 있습니다. 자세한 내용은 [pg\_partman 확장자를 사용하여 PostgreSQL 파티션 관리하기](PostgreSQL_Partitions.md)를 참조하세요.

**참고**  
RDS for PostgreSQL은 DB 인스턴스에 추가할 수 있는 `pg_tle` 확장을 통해 PostgreSQL용 신뢰할 수 있는 언어 확장을 지원합니다. 이 확장을 사용하면 개발자는 설정 및 구성 요구 사항을 간소화하는 안전한 환경에서 자체 PostgreSQL 확장을 만들 수 있습니다. `pg_tle` 확장을 지원하는 RDS for PostgreSQL 버전에 대해 알아보고 자세한 내용을 확인하려면 [PostgreSQL용 신뢰할 수 있는 언어 확장 작업](PostgreSQL_trusted_language_extension.md) 섹션을 참조하세요.

경우에 따라 확장을 설치하는 대신 RDS for PostgreSQL DB 인스턴스의 사용자 지정 DB 파라미터 그룹의 `shared_preload_libraries` 목록에 특정 모듈을 추가할 수 있습니다. 일반적으로 기본 DB 클러스터 파라미터 그룹은 `pg_stat_statements`만 로드하지만 목록에 추가할 수 있는 다른 모듈도 몇 개 있습니다. 예를 들어, [PostgreSQL pg\_cron 확장을 사용하여 유지 관리 예약](PostgreSQL_pg_cron.md)에 자세히 설명된 대로 `pg_cron` 모듈을 추가하여 스케줄링 기능을 추가할 수 있습니다. 또 다른 예로, `auto_explain` 모듈을 로드하여 쿼리 실행 계획을 로깅할 수 있습니다. 자세히 알아보려면 AWS 지식 센터에서 [쿼리 실행 계획 로깅에 관한 문서](https://aws.amazon.com/premiumsupport/knowledge-center/rds-postgresql-tune-query-performance/#)를 참조하세요.

RDS for PostgreSQL 버전에 따라 확장 프로그램을 설치하려면 다음과 같이 `rds_superuser` 권한이 필요합니다.
+ RDS for PostgreSQL 버전 12 및 이전 버전의 경우 확장 프로그램을 설치하려면 `rds_superuser` 권한이 필요합니다.
+ RDS for PostgreSQL 버전 13 및 이상 버전의 경우 지정된 데이터베이스 인스턴스에 대한 생성 권한이 있는 사용자(역할)는 *신뢰할 수 있는 확장 프로그램*을 설치하고 사용할 수 있습니다. 신뢰할 수 있는 확장 프로그램 목록은 [PostgreSQL 신뢰할 수 있는 확장](PostgreSQL.Concepts.General.FeatureSupport.Extensions.md#PostgreSQL.Concepts.General.Extensions.Trusted) 섹션을 참조하세요.

RDS for PostgreSQL DB 인스턴스에 설치할 수 있는 확장 프로그램을 `rds.allowed_extensions` 파라미터에 나열하여 정확하게 지정할 수도 있습니다. 자세한 내용은 [PostgreSQL 확장의 설치 제한](PostgreSQL.Concepts.General.FeatureSupport.Extensions.md#PostgreSQL.Concepts.General.FeatureSupport.Extensions.Restriction) 섹션을 참조하세요.

`rds_superuser` 역할에 대한 자세한 내용은 [PostgreSQL 역할 및 권한 이해](Appendix.PostgreSQL.CommonDBATasks.Roles.md) 섹션을 참조하세요.

**Topics**
+ [orafce 확장에서 함수 사용](Appendix.PostgreSQL.CommonDBATasks.orafce.md)
+ [PostgreSQL에 대한 Amazon RDS 위임 확장 지원 사용](RDS_delegated_ext.md)
+ [pg\_partman 확장자를 사용하여 PostgreSQL 파티션 관리하기](PostgreSQL_Partitions.md)
+ [pgAudit를 사용하여 데이터베이스 활동 로깅](Appendix.PostgreSQL.CommonDBATasks.pgaudit.md)
+ [PostgreSQL pg\_cron 확장을 사용하여 유지 관리 예약](PostgreSQL_pg_cron.md)
+ [pglogical을 사용하여 인스턴스 간 데이터 동기화](Appendix.PostgreSQL.CommonDBATasks.pglogical.md)
+ [pgactive를 사용하여 액티브-액티브 복제 지원](Appendix.PostgreSQL.CommonDBATasks.pgactive.md)
+ [pg\_repack 확장을 사용하여 테이블 및 인덱스에서 부풀림을 줄입니다.](Appendix.PostgreSQL.CommonDBATasks.pg_repack.md)
+ [PLV8 확장 업그레이드 및 사용](PostgreSQL.Concepts.General.UpgradingPLv8.md)
+ [PL/Rust를 사용하여 Rust 언어로 PostgreSQL 함수 작성](PostgreSQL.Concepts.General.Using.PL_Rust.md)
+ [PostGIS 확장을 사용하여 공간 데이터 관리](Appendix.PostgreSQL.CommonDBATasks.PostGIS.md)