본문으로 건너뛰기

파라미터 목록

카카오 클라우드에서는 PostgreSQL 설정에 필요한 다양한 파라미터들을 제공합니다.
일부 파라미터는 함수, 수식, 예약어를 지원하며 자세한 내용은 파라미터 그룹 > 파라미터에 사용되는 수식, 함수, 예약어를 참고하시기 바랍니다.
파라미터들의 단위(unit), 유형, 데이터 형식, 수정 여부 등 자세한 내용은 콘솔 내 파라미터 그룹 상세 보기에서 확인할 수 있습니다.

데이터 형식 Float

데이터 형식이 Float 파라미터는 값을 표시할 때 %.6g 형식을 사용합니다. 이 형식은 소수점을 제외한 유효 숫자 6자리까지만 출력하며 자릿수가 초과될 경우 자동으로 반올림처리해 표시되므로 파라미터 그룹에서 입력한 값과 실제 DB에서 확인되는 값과 다를 수 있습니다.

수정 시 주의해야 하는 파라미터

적절한 값으로 설정하지 않으면 PostgreSQL 서비스 운영에 영향을 미칠 수 있으므로 수정 시 주의가 필요한 파라미터입니다.

프로세스 수 제한

PostgreSQL은 내부 구조상 전체 프로세스 수를 262,143개 이하로 제한하고 있습니다.
autovacuum_max_workers, max_connections, max_wal_senders, max_worker_processes의 합이 262,143을 초과하는 경우 해당 파라미터들의 설정 값은 적용되지 않습니다.

메모리 파라미터

파라미터 이름설명수정 시 유의 사항
autovacuum_work_memAutovacuum 작업을 위한 메모리 크기
(-1maintenance_work_mem 사용)
기본값 -1: maintenance_work_mem 값 사용
설정 불가 값: 0 ~ 1023
별도 값 지정 시 전체 메모리 사용량이 autovacuum_work_mem × autovacuum_max_workers까지 증가 가능
effective_cache_size쿼리 플래너가 사용 가능한 캐시 메모리를 추정할 때 사용하는 값실제 메모리 직접 할당 없음
설정 기준: 데이터베이스 서버의 전체 메모리 규모
maintenance_work_mem유지보수 작업(VACUUM, CREATE INDEX 등)에서 사용할
최대 메모리 크기
작업 단위별 개별 메모리 할당
여러 작업 동시 수행 시 전체 메모리 사용량 증가 가능
shared_buffers테이블 및 인덱스 데이터를 캐시하기 위한 Shared memory 크기너무 작은 값: 성능 저하 가능
너무 큰 값: 시스템 과부하 또는 장애 가능
work_mem정렬, 해시, 집계 등의 쿼리 작업에 할당되는 메모리 크기작업 단위별 개별 메모리 할당
동시 실행 쿼리 증가 시 전체 메모리 사용량 증가 가능

연결 및 프로세스 파라미터

파라미터 이름설명수정 시 유의 사항
max_connections동시에 허용되는 최대 클라이언트 연결 수연결별 시스템 자원 사용
과도하게 큰 값 설정 시 CPU 및 메모리 사용량 증가로 시스템 부하 가능
max_parallel_workers서버에서 허용되는 최대 병렬 작업자 수서버 사양에 맞지 않는 큰 값 설정 시 CPU 및 메모리 사용량 증가로 시스템 부하 가능
max_worker_processes병렬 처리, 백그라운드 작업, 확장 기능 등에서
실행될 수 있는 최대 백그라운드 작업자 수
너무 낮은 값: 기능 동작 실패 또는 병렬 처리 제한 가능
너무 높은 값: 메모리 부족으로 서비스 기동 문제 발생 가능

락 및 트랜잭션 파라미터

파라미터 이름설명수정 시 유의 사항
max_locks_per_transaction트랜잭션당 획득할 수 있는 최대 락 개수과도하게 큰 값 설정 시 메모리 부족으로 서비스 기동 문제 발생 가능
max_pred_locks_per_transaction각 트랜잭션에서 획득할 수 있는 최대 예측 락 개수과도하게 큰 값 설정 시 메모리 부족으로 서비스 기동 문제 발생 가능
max_prepared_transactions동시에 사용할 수 있는 최대 사전 준비된 트랜잭션 수과도하게 큰 값 설정 시 메모리 부족으로 서비스 기동 문제 발생 가능

WAL 및 복제 파라미터

파라미터 이름설명수정 시 유의 사항
wal_keep_size보존할 WAL 파일의 최소 크기복제 지연 시 Standby 서버에 필요한 WAL 파일 부족 가능
복제 연결 유지를 위한 충분한 값 설정 필요

제공하는 파라미터 중 운영 정책상 권장하는 설정값이 있거나 직접 설정할 수 없는 파라미터입니다.

파라미터 이름설명설정 제한 및 권장 사항
application_name현재 세션을 실행하는 애플리케이션 이름 지정변경 필요 시 SET 명령을 통한 Session-level 설정 권장
client_encoding클라이언트와 서버 간 문자 인코딩 방식 설정변경 필요 시 SET 명령을 통한 Session-level 설정 권장
PostgreSQL에서 지원하는 캐릭터셋만 사용 가능
- 지원 목록은 공식 문서 참고
DateStyle날짜 및 시간 출력 형식 설정기본 데이터스타일이 아닌 형식 사용 시 ALTER USER ... SET 구문으로 사용자별 설정 권장
lc_messages메시지 및 오류 메시지 언어 설정운영 체제에서 제공하는 로케일 기반
시스템에 등록된 로케일 외 값 설정 불가
lc_monetary화폐 단위 형식을 결정하는 로케일운영 체제에서 제공하는 로케일 기반
시스템에 등록된 로케일 외 값 설정 불가
lc_numeric숫자 형식을 결정하는 로케일운영 체제에서 제공하는 로케일 기반
시스템에 등록된 로케일 외 값 설정 불가
lc_time날짜 및 시간 형식을 결정하는 로케일운영 체제에서 제공하는 로케일 기반
시스템에 등록된 로케일 외 값 설정 불가
log_statement_stats쿼리 실행 통계 로깅 여부 설정log_parser_stats, log_planner_stats, log_executor_stats가 모두 비활성화(OFF)된 경우에만 설정 가능
log_timezone로그 타임스탬프에 사용할 시간대 설정주요 국가 및 지역 기준으로 제공되는 타임존만 설정 가능
tcp_keepalives_countTCP 연결이 끊어지기 전에 보낼 최대 keepalive 패킷 수운영 체제의 TCP Keepalive 설정에 따라 결정
직접 수정 불가
tcp_keepalives_idleTCP 연결이 비활성 상태로 유지될 수 있는 최대 시간(초)운영 체제의 TCP Keepalive 설정에 따라 결정
직접 수정 불가
tcp_keepalives_intervalTCP keepalive 패킷 간격(초)운영 체제의 TCP Keepalive 설정에 따라 결정
직접 수정 불가
TimeZone서버에서 사용할 기본 시간대 설정주요 국가 및 지역 기준으로 제공되는 타임존만 설정 가능
wal_bufferWAL 로그 버퍼 크기데이터베이스 제약 사항에 따라 0 ~ 3 값 설정 불가