모든 매개변수 이름은 대소문자를 구분하지 않습니다. 모든 매개변수 부울, 정수, 부동의 네 가지 유형 중 하나의 값을 취합니다. 포인트 또는 문자열. 부울 값은 다음과 같이 쓸 수 있습니다.켜짐, 꺼짐, 참, 거짓, 예, 아니요, 1, 0(모두 대소 문자를 구분하지 않음) 또는 이들의 명확한 접두사.
일부 설정은 메모리 또는 시간 값을 지정합니다. 이들 각각 킬로바이트, 블록 등의 암시적 단위가 있습니다. (일반적으로 8킬로바이트), 밀리초, 초 또는 분입니다. 기본 단위는 참조하여 쿼리할 수 있습니다.pg_settings.unit. 편의상 다른 단위를 명시적으로 지정할 수도 있습니다. 유효한 메모리 단위는 다음과 같습니다.KB(킬로바이트),MB(메가바이트) 및GB(기가바이트); 유효한 시간 단위는 다음과 같습니다.ms(밀리초),s(초),분(분),h(시간), 그리고d(일). 승수는 메모리 단위는 1000이 아니라 1024입니다.
이 토토 캔변수를 설정하는 한 가지 방법은 파일을 편집하는 것입니다.postgresql.conf, 일반적으로 데이터 디렉터리에 보관됩니다. (initdb기본 복사본을 설치합니다. 거기.) 이 파일의 모양에 대한 예는 다음과 같습니다.
# 댓글입니다 log_connections = 예 log_destination = 'syslog' search_path = '"$user", 공개' shared_buffers = 128MB
한 줄에 하나의 토토 캔변수가 지정됩니다. 사이의 등호 이름과 값은 선택 사항입니다. 공백은 중요하지 않으며 비어 있습니다. 행은 무시됩니다. 해시 마크(#) 어디서나 댓글을 소개하세요. 단순하지 않은 토토 캔변수 값 식별자나 숫자는 작은따옴표로 묶어야 합니다. 단일을 포함하려면 토토 캔변수 값에 따옴표를 입력하거나 두 개의 따옴표를 쓰세요(선호). 또는 백슬래시 인용문.
토토 캔변수 외에 설정,postgresql.conf파일은 다음과 같습니다. 포함지시어 포함, 삽입된 것처럼 읽고 처리할 다른 파일을 지정합니다. 이 시점에서 구성 파일에 추가하십시오. 지시어 포함 그냥 다음과 같이 생겼어요
'파일 이름' 포함
파일 이름이 절대 경로가 아닌 경우 다음과 같이 간주됩니다 참조를 포함하는 디렉토리를 기준으로 구성 파일. 포함 항목은 중첩될 수 있습니다.
구성 파일 주 서버 프로세스가 다음을 수신할 때마다 다시 읽혀집니다.SIGHUP신호(가장 다음을 통해 쉽게 전송됨pg_ctl reload). 메인 서버 프로세스도 이 신호를 모든 서버에 전파합니다. 현재 서버 프로세스를 실행 중이므로 기존 세션도 새로운 가치를 얻으세요. 또는 신호를 다음으로 보낼 수 있습니다. 단일 서버 프로세스를 직접적으로 처리합니다. 일부 매개변수는 설정만 가능합니다. 서버 시작 시; 항목에 대한 변경 사항 구성 파일은 서버가 완료될 때까지 무시됩니다. 다시 시작되었습니다.
이러한 구성 토토 캔변수를 설정하는 두 번째 방법은 이를 명령줄 옵션으로포스트그레스명령, 예:
postgres -c log_connections=yes -c log_destination='syslog'
명령줄 옵션은 충돌하는 모든 설정을 무시합니다.postgresql.conf. 이 뜻은 참고하세요 편집을 통해 즉시 값을 변경할 수 없습니다.postgresql.conf, 그래서 그 동안 명령줄 방법은 편리할 수 있지만 비용이 많이 들 수 있습니다. 나중에 유연성을 가지세요.
때때로 하나에게 명령줄 옵션을 제공하는 것이 유용합니다. 특정 세션만. 환경 변수PGOPTIONS클라이언트에서 이 목적으로 사용될 수 있습니다 측면:
env PGOPTIONS='-c geqo=off' psql
(이것은 누구에게나 적용됩니다.libpq기반 클라이언트 애플리케이션뿐만 아니라psql.) 이 방법은 작동하지 않습니다. 서버가 시작될 때 고정되거나 에 지정해야 합니다.postgresql.conf.
또한, 매개변수 세트를 할당하는 것이 가능합니다 사용자 또는 데이터베이스에 대한 설정입니다. 세션이 시작될 때마다 관련된 사용자 및 데이터베이스의 기본 설정은 다음과 같습니다. 로드되었습니다. 명령사용자 변경그리고데이터베이스 변경는 각각 이러한 설정을 구성하는 데 사용됩니다. 데이터베이스별 설정 재정의 에서 받은 모든 것포스트그레명령줄 또는 구성 파일이며 차례로 사용자별 설정으로 재정의됩니다. 둘 다 다음에 의해 재정의됩니다. 세션별 설정입니다.
일부 토토 캔변수는 개별적으로 변경될 수 있습니다.SQL다음과의 세션SET명령, 예:
ENABLE_SEQSCAN을 OFF로 설정;
만약SET허용되며 모두 재정의됩니다. 매개변수 값의 다른 소스. 일부 매개변수는 다음을 통해 변경됨SET: 예를 들어, 만약 그들이 다시 시작하지 않으면 변경할 수 없는 제어 동작 전체PostgreSQL서버. 또한, 일부 매개변수는 다음을 통해 수정될 수 있습니다.SET또는변경수퍼유저에 의한 것이지만, 일반 사용자입니다.
그토토 핫 PostgreSQL : 문서 : 8.2 : show명령은 허용합니다 모든 매개변수의 현재 값을 검사합니다.
가상 테이블pg_settings(설명됨토토 핫 : 문서 : 8.2 : PG_SETTINGS) 세션 런타임 매개변수를 표시하고 업데이트할 수도 있습니다. 이는 다음과 같습니다.표시그리고SET이지만 사용하기가 더 편리할 수 있습니다. 다른 테이블과 조인하거나 임의의 테이블을 사용하여 선택할 수 있습니다. 원하는 선택 조건.