본문으로 건너뛰기

extension_control_path

버전기본값context타입
18userstring
19userstring

extension의 control 파일(name.control)을 찾을 검색 경로를 정한다. PostgreSQL 18에서 추가된 파라미터로, 기본값은 $system이다.

값은 콜론(Windows에서는 세미콜론)으로 구분한 절대 경로 목록이다. 경로 요소가 $system으로 시작하면 컴파일 시 정해진 PostgreSQL extension 디렉토리로 치환되며, 표준 배포판의 extension이 설치되는 곳이다(pg_config --sharedir로 확인). 각 경로 요소 아래에는 .control.sql 파일을 담은 extension 하위 디렉토리가 있어야 하며, 이 접미 경로는 자동으로 붙는다. extension의 script 파일과 보조 control 파일은 primary control 파일이 발견된 디렉토리에서 함께 로드되고, 같은 이름의 extension이 여러 경로에 있으면 경로상 먼저 발견된 쪽만 쓰인다.

런타임 변경은 connection이 끝날 때까지만 유지되므로 실제 설정은 postgresql.conf에서 하는 것이 권장된다. 비표준 위치의 extension을 쓰려면 공유 라이브러리도 같은 곳에 있을 가능성이 높으므로, 대개 dynamic_library_path를 대응하는 위치로 함께 설정해야 한다.

운영 노트: PostgreSQL 18 이전에는 extension을 반드시 시스템 디렉토리에 설치해야 했다. 이 파라미터 덕분에 패키지 디렉토리를 건드리지 않고 별도 경로에서 extension을 관리하는 구성이 가능해졌다.

출처: PostgreSQL 18 문서