다음 매개변수는 개발자 테스트용이며 프로덕션 데이터베이스에서는 절대 사용해서는 안 됩니다. 그러나 그 중 일부는 심각하게 손상된 데이터베이스의 복구를 지원하는 데 사용될 수 있습니다. 따라서 샘플에서 제외되었습니다.postgresql.conf파일. 이러한 매개변수 중 상당수가 제대로 작동하려면 특별한 소스 컴파일 플래그가 필요합니다.
allow_in_place_tablespaces (부울) 테이블스페이스가 내부 디렉토리로 생성되도록 허용pg_tblspc, 빈 위치 문자열이에 제공되는 경우테이블스페이스 생성명령. 이는 기본 서버와 대기 서버가 동일한 시스템에서 실행되는 복제 시나리오를 테스트할 수 있도록 하기 위한 것입니다. 이러한 디렉터리는 해당 위치에서 기호 링크만 찾을 것으로 예상하는 백업 도구를 혼동할 가능성이 높습니다. 적절한 권한을 가진 수퍼유저 및 토토 커뮤니티자만SET권한으로 이 설정을 변경할 수 있습니다.
allow_system_table_mods (부울) 시스템 테이블의 구조 수정과 시스템 테이블에 대한 기타 위험한 작업을 허용합니다. 그렇지 않으면 슈퍼유저에게도 허용되지 않습니다. 이 설정을 부주의하게 토토 커뮤니티하면 복구할 수 없는 데이터 손실이 발생하거나 데이터베이스 시스템이 심각하게 손상될 수 있습니다. 적절한 권한을 가진 수퍼유저 및 토토 커뮤니티자만SET권한으로 이 설정을 변경할 수 있습니다.
backtrace_functions (문자열) 이 매개변수는 쉼표로 구분된 C 함수 이름 목록을 포함합니다. 오류가 발생하고 오류가 발생한 내부 C 함수의 이름이 목록의 값과 일치하면 오류 메시지와 함께 역추적이 서버 로그에 기록됩니다. 이는 소스 코드의 특정 영역을 디버깅하는 데 토토 커뮤니티될 수 있습니다.
역추적 지원은 모든 플랫폼에서 제공되지 않으며 역추적 품질은 컴파일 옵션에 따라 다릅니다.
슈퍼유저와 적절한 권한을 가진 토토 커뮤니티자만SET권한으로 이 설정을 변경할 수 있습니다.
debug_discard_caches (정수) 다음으로 설정된 경우1, 각 시스템 카탈로그 캐시 항목은 실제로 무효화되는 일이 발생했는지 여부에 관계없이 가능한 첫 번째 기회에 무효화됩니다. 결과적으로 시스템 카탈로그 캐싱이 효과적으로 비활성화되므로 서버 실행 속도가 매우 느려집니다. 값이 높을수록 캐시 무효화를 재귀적으로 실행하므로 속도가 더 느려지고 캐싱 논리 자체를 테스트하는 데에만 유용합니다. 기본값은0일반적인 카탈로그 캐싱 동작을 선택합니다.
이 매개변수는 동시 카탈로그 변경과 관련된 재현하기 어려운 버그를 유발하려고 할 때 매우 유용할 수 있지만 그 외에는 거의 필요하지 않습니다. 소스 코드 파일 보기inval.c그리고pg_config_manual.h자세한 내용은.
이 매개변수는 다음 경우에 지원됩니다.DISCARD_CACHES_ENABLED컴파일 시 정의되었습니다(이는 다음을 사용할 때 자동으로 발생함구성옵션--활성화-카서트). 프로덕션 빌드에서는 해당 값이 항상 다음과 같습니다.0다른 값으로 설정하려고 하면 오류가 발생합니다.
force_parallel_mode (열거형) 성능상의 이점이 예상되지 않는 경우에도 테스트 목적으로 병렬 쿼리를 토토 커뮤니티할 수 있습니다. 허용되는 값은force_parallel_mode아르꺼짐(성능 향상이 예상되는 경우에만 병렬 모드를 토토 커뮤니티하십시오),켜짐(안전하다고 생각되는 모든 쿼리에 대해 병렬 쿼리를 강제 실행) 및회귀(좋아요켜짐, 하지만 아래 설명과 같이 추가 동작 변경이 있습니다.
더 구체적으로, 이 값을 다음으로 설정합니다.켜짐다음을 추가하겠습니다집결노드를 안전해 보이는 쿼리 계획의 맨 위에 추가하여 쿼리가 병렬 작업자 내부에서 실행되도록 합니다. 병렬 작업자를 사용할 수 없거나 사용할 수 없는 경우에도 병렬 쿼리 컨텍스트에서 금지되는 하위 트랜잭션 시작과 같은 작업은 플래너가 이로 인해 쿼리가 실패할 것이라고 생각하지 않는 한 금지됩니다. 이 옵션을 설정할 때 실패하거나 예상치 못한 결과가 발생하는 경우 쿼리에서 사용되는 일부 기능을 표시해야 할 수 있습니다.병렬 안전하지 않음(또는 아마도,병렬 제한됨).
이 값을 다음으로 설정 중회귀다음으로 설정한 것과 모두 동일한 효과를 갖습니다.켜짐그리고 자동화된 회귀 테스트를 용이하게 하기 위한 몇 가지 추가 효과. 일반적으로 병렬 작업자의 메시지에는 이를 나타내는 컨텍스트 줄이 포함되지만 설정은회귀은 출력이 비병렬 실행과 동일하도록 이 줄을 억제합니다. 또한,집결이 설정으로 계획에 추가된 노드는 다음에 숨겨져 있습니다.설명이 설정을 바꾸면 얻을 수 있는 결과와 일치하도록 출력꺼짐.
ignore_system_indexes (부울) 시스템 테이블을 읽을 때 시스템 인덱스를 무시합니다(그러나 테이블을 수정할 때는 여전히 인덱스를 업데이트합니다). 이는 손상된 시스템 인덱스를 복구할 때 유용합니다. 이 매개변수는 세션 시작 후에는 변경할 수 없습니다.
post_auth_delay (정수) 새 서버 프로세스가 인증 절차를 수행한 후 시작될 때 지연되는 시간입니다. 이는 개발자에게 디버거를 사용하여 서버 프로세스에 연결할 수 있는 기회를 제공하기 위한 것입니다. 이 값을 단위 없이 지정하면 초로 간주됩니다. 0(기본값) 값은 지연을 비활성화합니다. 이 매개변수는 세션 시작 후에는 변경할 수 없습니다.
pre_auth_delay (정수) 새 서버 프로세스가 분기된 직후 인증 절차를 수행하기 전 지연되는 시간입니다. 이는 개발자에게 디버거를 사용하여 서버 프로세스에 연결하여 인증 시 잘못된 동작을 추적할 수 있는 기회를 제공하기 위한 것입니다. 이 값을 단위 없이 지정하면 초로 간주됩니다. 0(기본값) 값은 지연을 비활성화합니다. 이 매개변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령줄에서.
trace_notify (부울) 에 대한 많은 양의 디버깅 출력을 생성합니다.듣기그리고알림명령.client_min_messages또는log_min_messages반드시디버그1또는 그 이하로 이 출력을 각각 클라이언트 또는 서버 로그로 보냅니다.
trace_recovery_messages (열거형) 그렇지 않으면 기록되지 않을 복구 관련 디버깅 출력의 기록을 활성화합니다. 이 매개변수를 토토 커뮤니티하면 토토 커뮤니티자는의 일반 설정을 재정의할 수 있습니다.log_min_messages, 특정 메시지에만 해당됩니다. 이는 핫 대기 디버깅에 사용하기 위한 것입니다. 유효한 값은 다음과 같습니다.디버그5, 디버그4, 디버그3, 디버그2, 디버그1및로그. 기본값은,로그, 로깅 결정에 전혀 영향을 미치지 않습니다. 다른 값을 사용하면 해당 우선순위 이상의 복구 관련 디버그 메시지가 마치 다음과 같이 기록됩니다.로그우선순위; 일반적인 설정의 경우log_min_messages이로 인해 무조건 서버 로그로 전송됩니다. 이 매개변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령줄에서.
trace_sort (부울) 켜져 있으면 정렬 작업 중 리소스 사용량에 대한 정보를 내보냅니다. 이 매개변수는 다음과 같은 경우에만 사용할 수 있습니다.TRACE_SORT매크로가 정의된 시기PostgreSQL컴파일되었습니다. (단,TRACE_SORT현재는 기본적으로 정의되어 있습니다.)
trace_locks (부울) 켜져 있으면 잠금 사용에 대한 정보를 내보냅니다. 덤프되는 정보에는 잠금 작업 유형, 잠금 유형 및 잠기거나 잠금 해제되는 개체의 고유 식별자가 포함됩니다. 또한 이 개체에 이미 부여된 잠금 유형과 이 개체에 대해 대기 중인 잠금 유형에 대한 비트 마스크도 포함됩니다. 각 잠금 유형에 대해 부여된 잠금 및 대기 중인 잠금의 수와 총계도 덤프됩니다. 로그 파일 출력의 예는 다음과 같습니다.
로그: LockAcquire: 신규: 잠금(0xb7acd844) id(24688,24696,0,0,0,1)
그랜트마스크(0) 요청(0,0,0,0,0,0,0)=0 그랜트(0,0,0,0,0,0,0)=0
대기(0) 유형(AccessShareLock)
로그: GrantLock: 잠금(0xb7acd844) ID(24688,24696,0,0,0,1)
grantMask(2) req(1,0,0,0,0,0,0)=1 부여(1,0,0,0,0,0,0)=1
대기(0) 유형(AccessShareLock)
로그: UnGrantLock: 업데이트됨: 잠금(0xb7acd844) ID(24688,24696,0,0,0,1)
그랜트마스크(0) 요청(0,0,0,0,0,0,0)=0 그랜트(0,0,0,0,0,0,0)=0
대기(0) 유형(AccessShareLock)
로그: CleanUpLock: 삭제: 잠금(0xb7acd844) ID(24688,24696,0,0,0,1)
그랜트마스크(0) 요청(0,0,0,0,0,0,0)=0 그랜트(0,0,0,0,0,0,0)=0
대기(0) 유형(잘못됨)
덤핑되는 구조물에 대한 자세한 내용은 다음에서 찾을 수 있습니다.src/include/storage/lock.h.
이 매개변수는 다음 경우에만 사용할 수 있습니다.LOCK_DEBUG매크로가 정의된 시기포스트그레SQL컴파일되었습니다.
trace_lwlocks (부울) 켜져 있으면 경량 잠금 사용에 대한 정보를 내보냅니다. 경량 잠금은 주로 공유 메모리 데이터 구조에 대한 액세스를 상호 배제하기 위한 것입니다.
이 매개변수는 다음 경우에만 사용할 수 있습니다.LOCK_DEBUG매크로가 정의된 시기PostgreSQL컴파일되었습니다.
trace_userlocks (부울) 켜져 있으면 사용자 잠금 사용에 대한 정보를 내보냅니다. 출력은 다음과 동일합니다.trace_locks, 권고 잠금에만 해당됩니다.
이 매개변수는 다음의 경우에만 사용할 수 있습니다.LOCK_DEBUG매크로가 정의된 시기포스트그레SQL컴파일되었습니다.
trace_lock_oidmin (정수) 설정된 경우 이 OID 아래 테이블에 대한 잠금을 추적하지 않습니다(시스템 테이블의 출력을 방지하는 데 사용됨).
이 매개변수는 다음 경우에만 사용할 수 있습니다.LOCK_DEBUG매크로가 정의된 시기PostgreSQL컴파일되었습니다.
trace_lock_table (정수) 이 테이블(OID)에 대한 잠금을 무조건 추적합니다.
이 매개변수는 다음의 경우에만 사용할 수 있습니다.LOCK_DEBUG매크로가 정의된 시기PostgreSQL컴파일되었습니다.
debug_deadlocks (부울) 설정된 경우 교착 상태 시간 초과가 발생할 때 현재 모든 잠금에 대한 정보를 덤프합니다.
이 매개변수는 다음 경우에만 사용할 수 있습니다.LOCK_DEBUG매크로가 정의된 시기PostgreSQL컴파일되었습니다.
log_btree_build_stats (부울) 설정된 경우 다양한 B-트리 작업에 대한 시스템 리소스 토토 커뮤니티량 통계(메모리 및 CPU)를 기록합니다.
이 매개변수는 다음 경우에만 사용할 수 있습니다.BTREE_BUILD_STATS매크로가 정의된 시기PostgreSQL컴파일되었습니다.
wal_consistency_checking (문자열) 이 매개변수는 WAL 다시 실행 루틴의 버그를 확인하는 데 사용됩니다. 활성화되면 WAL 레코드와 함께 수정된 버퍼의 전체 페이지 이미지가 레코드에 추가됩니다. 이후에 레코드가 재생되면 시스템은 먼저 각 레코드를 적용한 다음 레코드에 의해 수정된 버퍼가 저장된 이미지와 일치하는지 테스트합니다. 특정 경우(예: 힌트 비트)에는 사소한 변형이 허용되며 무시됩니다. 예상치 못한 차이점이 있으면 치명적인 오류가 발생하여 복구가 종료됩니다.
이 설정의 기본값은 기능을 비활성화하는 빈 문자열입니다. 로 설정할 수 있습니다.모두모든 레코드를 확인하려면, 또는 쉼표로 구분된 리소스 관리자 목록으로 이동하여 해당 리소스 관리자에서 발생한 레코드만 확인하세요. 현재 지원되는 리소스 관리자는 다음과 같습니다.힙, 힙2, 브트리, 해시, 진, 요점, 시퀀스, spgist, 브린그리고일반. 확장은 추가 리소스 관리자를 정의할 수 있습니다. 적절한 권한을 가진 수퍼유저 및 토토 커뮤니티자만세트권한으로 이 설정을 변경할 수 있습니다.
wal_debug (부울) 켜져 있으면 WAL 관련 디버깅 출력을 내보냅니다. 이 매개변수는 다음과 같은 경우에만 사용할 수 있습니다.WAL_DEBUG매크로가 정의된 시기PostgreSQL컴파일되었습니다.
ignore_checksum_failure (부울) 다음의 경우에만 효과가 있습니다.데이터 체크섬활성화되었습니다.
읽기 중 체크섬 오류가 감지되면 일반적으로 다음이 발생합니다.PostgreSQL오류를 보고하고 현재 트랜잭션을 중단합니다. 설정ignore_checksum_failure을 켜면 시스템이 실패를 무시하고(그러나 여전히 경고를 보고함) 처리를 계속합니다. 이 동작은 다음과 같습니다.충돌을 일으키거나 손상을 전파하거나 숨기거나 기타 심각한 문제를 일으키는 경우. 그러나 이를 통해 오류를 극복하고 블록 헤더가 여전히 정상인 경우 테이블에 여전히 존재할 수 있는 손상되지 않은 튜플을 검색할 수 있습니다. 헤더가 손상되면 이 옵션이 활성화되어 있어도 오류가 보고됩니다. 기본 설정은꺼짐. 적절한 권한을 가진 수퍼유저 및 토토 커뮤니티자만SET권한으로 이 설정을 변경할 수 있습니다.
zero_damaged_pages (부울) 손상된 페이지 헤더를 감지하면 일반적으로 다음이 발생합니다.PostgreSQL오류를 보고하고 현재 거래를 중단합니다. 설정zero_damaged_pages을 켜면 시스템이 대신 경고를 보고하고 메모리의 손상된 페이지를 비우고 처리를 계속합니다. 이 행동데이터를 파괴합니다, 즉 손상된 페이지의 모든 행입니다. 그러나 이를 통해 오류를 극복하고 테이블에 있을 수 있는 손상되지 않은 페이지에서 행을 검색할 수 있습니다. 하드웨어나 소프트웨어 오류로 인해 손상이 발생한 경우 데이터를 복구하는 데 유용합니다. 일반적으로 테이블의 손상된 페이지에서 데이터를 복구하려는 희망을 포기할 때까지 이 설정을 설정해서는 안 됩니다. 비워진 페이지는 디스크에 강제로 저장되지 않으므로 이 매개변수를 다시 끄기 전에 테이블이나 인덱스를 다시 생성하는 것이 좋습니다. 기본 설정은꺼짐. 적절한 권한을 가진 수퍼유저 및 토토 커뮤니티자만SET권한으로 이 설정을 변경할 수 있습니다.
ignore_invalid_pages (부울) 다음으로 설정된 경우꺼짐(기본값) 복구 중 잘못된 페이지에 대한 참조가 있는 WAL 레코드 감지로 인해 발생포스트그레SQLPANIC 수준 오류를 발생시켜 복구를 중단합니다. 설정ignore_invalid_pages에켜짐시스템이 WAL 레코드의 유효하지 않은 페이지 참조를 무시하도록 하고(그러나 여전히 경고를 보고함) 복구를 계속합니다. 이 동작은 다음과 같습니다.충돌, 데이터 손실, 손상 전파 또는 숨기기 또는 기타 심각한 문제 발생. 그러나 이를 통해 PANIC 수준 오류를 극복하고 복구를 완료하고 서버를 시작할 수 있습니다. 매개변수는 서버 시작 시에만 설정할 수 있습니다. 복구 중이나 대기 모드에서만 효과가 있습니다.
jit_debugging_support (부울) LLVM에 필요한 기능이 있는 경우 생성된 함수를 다음으로 등록GDB. 이렇게 하면 디버깅이 더 쉬워집니다. 기본 설정은꺼짐. 이 매개변수는 서버 시작 시에만 설정할 수 있습니다.
jit_dump_bitcode (부울) 생성된 내용을 씁니다LLVM파일 시스템으로 IR 출력, 내부data_directory. 이는 JIT 구현의 내부 작업에만 유용합니다. 기본 설정은꺼짐. 적절한 권한을 가진 수퍼유저 및 토토 커뮤니티자만SET권한으로 이 설정을 변경할 수 있습니다.
jit_expressions (부울) JIT 컴파일이 활성화되면 표현식이 JIT 컴파일되는지 결정합니다(참조PostgreSQL : 문서 : 15 : 32.2. 언제 토토 베이?). 기본값은켜짐.
jit_profiling_support (부울) LLVM에 필요한 기능이 있는 경우 허용하는 데 필요한 데이터를 내보냅니다.성능JIT에서 생성된 기능을 프로파일링합니다. 그러면 파일이 다음 위치에 기록됩니다.~/.debug/jit/; 토토 커뮤니티자는 원할 때 정리 작업을 수행할 책임이 있습니다. 기본 설정은꺼짐. 이 매개변수는 서버 시작 시에만 설정할 수 있습니다.
jit_tuple_deforming (부울) JIT 컴파일이 활성화될 때 튜플 변형이 JIT 컴파일되는지 결정합니다(참조PostgreSQL : 문서 : 15 : 32.2. 언제 토토 베이?). 기본값은켜짐.
remove_temp_files_after_crash (부울) 다음으로 설정된 경우켜짐(기본값),PostgreSQL백엔드 충돌 후 임시 파일을 자동으로 제거합니다. 비활성화하면 파일이 유지되며 예를 들어 디버깅에 토토 커뮤니티될 수 있습니다. 그러나 반복적인 충돌로 인해 쓸모없는 파일이 축적될 수 있습니다. 이 매개변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령줄에서.
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.