데이터베이스 서버가 공유에 사용하는 메모리 양을 설정토토 꽁 머니. 메모리 버퍼. 기본값은 일반적으로 128MB입니다(128MB), 그러나 커널 설정의 경우 더 적을 수 있습니다. 이를 지원하지 않습니다(이 과정에서 결정됨)initdb). 이 설정은 128 이상이어야 토토 꽁 머니. 킬로바이트. (기본값이 아님BLCKSZ최소값을 변경합니다.) 그러나 설정은 다음보다 훨씬 높습니다. 일반적으로 좋은 성능을 위해서는 최소값이 필요합니다. 이 매개변수 서버 시작 시에만 설정할 수 있습니다.
RAM이 1GB 이상인 전용 데이터베이스 서버가 있는 경우, 합리적인 시작 값shared_buffers는 시스템 메모리의 25%입니다. 대규모 설정이 적용되는 일부 작업 부하가 있습니다.shared_buffers효과적이지만, 왜냐하면포스트그레SQL또한 운영 체제 캐시에 더 많은 캐시를 할당할 가능성은 거의 없습니다. RAM의 40% 이상shared_buffers할 것이다 적은 양보다 더 잘 작동토토 꽁 머니. 더 큰 설정:shared_buffers보통 해당 항목이 필요토토 꽁 머니. 증가checkpoint_segments, 순서대로 대량의 새 글이나 글을 쓰는 과정을 확산시키다 장기간에 걸쳐 데이터가 변경되었습니다.
RAM이 1GB 미만인 시스템에서는 더 적은 비율의 RAM이 RAM이 적절하므로 작동을 위한 적절한 공간을 확보해야 합니다. 시스템. 또한 Windows에서는 다음 값이 큽니다.shared_buffers효과적이지 않습니다. 당신은 찾을 수 있습니다 설정을 상대적으로 낮게 유지하고 대신 운영 체제 캐시가 더 많습니다. 다음의 유용한 범위는shared_buffersWindows 시스템에서는 일반적으로 64MB에서 512MB까지입니다.
각각이 사용하는 임시 버퍼의 최대 수를 설정토토 꽁 머니. 데이터베이스 세션. 이는 세션 로컬 버퍼입니다. 임시 테이블에 대한 액세스. 기본값은 8MB입니다. (8MB). 내에서 설정을 변경할 수 있습니다. 개별 세션이지만 임시 세션을 처음 사용하기 전에만 가능토토 꽁 머니. 세션 내의 테이블; 이후에 값을 변경하려고 시도함 해당 세션에는 아무런 영향을 미치지 않습니다.
세션은 필요에 따라 임시 버퍼를 할당합니다. 다음으로 주어진 한도temp_buffers. 비용 실제로 많은 값이 필요하지 않은 세션에 큰 값 설정 임시 버퍼는 단지 버퍼 설명자 또는 약 64바이트입니다. 증분당temp_buffers. 그러나 만일 버퍼가 실제로 사용되며 추가로 8192바이트가 토토 꽁 머니됩니다. 그것을 위해(또는 일반적으로,BLCKSZ바이트).
에 있을 수 있는 최대 트랜잭션 수를 설정토토 꽁 머니."준비됨"동시에 상태(참조PostgreSQL : 문서 : 9.3 : 거래 스포츠 토토 베트맨). 이 매개변수를 0(기본값)으로 설정하면 준비된 거래 기능. 이 매개변수는 다음에서만 설정할 수 있습니다. 서버 시작.
준비된 트랜잭션을 사용할 계획이 없다면 이것은 실수로 생성되는 것을 방지하려면 매개변수를 0으로 설정해야 토토 꽁 머니. 준비된 거래. 준비된 트랜잭션을 사용하는 경우 아마도 원할 것입니다max_prepared_transactions적어도 그 크기는max_connections, 모든 세션에 대기 중인 준비된 트랜잭션이 있을 수 있도록 토토 꽁 머니.
대기 서버를 실행할 때 이 매개변수를 다음으로 설정해야 합니다. 마스터 서버의 값과 동일하거나 더 높은 값입니다. 그렇지 않으면, 대기 서버에서는 쿼리가 허용되지 않습니다.
내부 정렬에 사용될 메모리 양을 지정토토 꽁 머니. 임시 디스크 파일에 쓰기 전에 작업 및 해시 테이블을 사용토토 꽁 머니. 값의 기본값은 1MB입니다(1MB). 복잡한 쿼리의 경우 여러 정렬 또는 해시 작업이 필요합니다. 병렬로 실행 중일 수 있습니다. 각 작업은 다음을 사용할 수 있습니다. 쓰기를 시작하기 전에 이 값이 지정하는 만큼의 메모리 데이터를 임시 파일로 저장합니다. 또한 여러 개의 실행 중인 세션이 있을 수 있습니다. 그러한 작업을 동시에 수행합니다. 그러므로 총 메모리는 사용된 값은 다음 값의 몇 배일 수 있습니다.work_mem; 이 사실을 명심해야 한다 값을 선택할 때. 정렬 작업은 다음에 사용됩니다.주문 기준, 독특및 병합 조인. 해시 테이블은 해시 조인에 사용되며, 해시 기반 집계 및 해시 기반 처리IN하위 쿼리.
유지 관리에 사용할 최대 메모리 양을 지정합니다. 다음과 같은 작업진공, 색인 생성및테이블 변경 외래 키 추가. 기본값은 16MB입니다(16MB). 이 작업 중 하나만 수행할 수 있으므로 데이터베이스 세션에 의해 한 번에 실행되고 설치 일반적으로 동시에 실행되는 작업이 많지 않으므로 안전합니다. 이 값을 다음보다 훨씬 크게 설정하려면work_mem. 설정이 크면 성능이 향상될 수 있습니다. 진공 청소기로 청소하고 데이터베이스 덤프를 복원하는 데 사용됩니다.
autovacuum이 실행되면 최대autovacuum_max_workers번 이 메모리가 할당될 수 있으므로 설정하지 않도록 주의하세요. 기본값이 너무 높습니다.
서버 실행의 최대 안전 깊이를 지정합니다. 스택. 이 매개변수의 이상적인 설정은 실제 스택입니다. 커널에 의해 시행되는 크기 제한(다음에 의해 설정됨)ulimit -s또는 이에 상응하는 현지), 안전 마진 제외 메가바이트 정도. 스택이 있기 때문에 안전 마진이 필요토토 꽁 머니. 깊이는 서버의 모든 루틴에서 확인되지는 않지만 표현식 평가와 같은 잠재적으로 재귀적인 주요 루틴. 기본 설정은 2MB입니다(2MB), 이는 보수적으로 작고 가능성이 낮습니다. 위험 충돌. 그러나 실행을 허용하기에는 너무 작을 수 있습니다. 복잡한 기능. 슈퍼유저만 이 설정을 변경할 수 있습니다.
설정max_stack_깊이보다 높음 실제 커널 제한은 폭주 재귀 함수가 개별 백엔드 프로세스가 중단됩니다. 다음과 같은 플랫폼에서토토 꽁 머니다음을 결정할 수 있습니다. 커널 제한이 있으므로 서버는 이 변수를 다음으로 설정하는 것을 허용하지 않습니다. 안전하지 않은 값. 그러나 모든 플랫폼이 다음을 제공하는 것은 아닙니다. 정보이므로 값 선택 시 주의하는 것이 좋습니다.
세션이 수행할 수 있는 최대 디스크 공간을 지정합니다. 임시 파일 정렬 및 해시와 같은 임시 파일에 사용 유지된 커서에 대한 저장 파일입니다. 시도하는 거래 이 한도를 초과하면 취소됩니다. 값은 다음에서 지정됩니다. 킬로바이트 및-1(기본값)은 아니요를 의미합니다. 한계. 슈퍼유저만 이 설정을 변경할 수 있습니다.
이 설정은 특정 순간에 사용되는 총 공간을 다음과 같이 제한합니다. 특정에서 사용하는 모든 임시 파일포스트그레SQL세션. 주목해야 할 점은 명시적 임시 테이블에 사용되는 디스크 공간 쿼리 실행 시 배후에서 사용되는 임시 파일은 다음과 같습니다.아님이것에 반대토토 꽁 머니 한도.
동시에 열 수 있는 최대 파일 수를 설정합니다. 각 서버 하위 프로세스. 기본값은 1,000개 파일입니다. 만약 커널은 안전한 프로세스별 제한을 적용하므로 그럴 필요가 없습니다. 이 설정에 대해 걱정하십시오. 그러나 일부 플랫폼(특히 대부분의 BSD)에서는 시스템) 커널은 개별 프로세스가 많은 것을 열 수 있도록 허용합니다. 프로세스가 많을 경우 시스템이 실제로 지원할 수 있는 것보다 더 많은 파일 모두 그렇게 많은 파일을 열려고합니다. 만약 당신이 본다면"열린 파일이 너무 많습니다"실패, 시도해 보세요 이 설정을 줄입니다. 이 매개변수는 서버에서만 설정할 수 있습니다. 시작합니다.
이 변수는 하나 이상의 공유 라이브러리를 지정토토 꽁 머니. 서버 시작 시 미리 로드됩니다. 예를 들어,'$libdir/mylib'원인이 될 것입니다mylib.so(또는 일부 플랫폼에서는mylib.sl)가 설치 프로그램에서 사전 로드됩니다. 표준 라이브러리 디렉토리. 모든 라이브러리 이름은 다음으로 변환됩니다. 큰따옴표가 없는 한 소문자입니다. 도서관이 2개 이상인 경우 로드된 경우 이름을 쉼표로 구분하세요. 이 매개변수는 서버 시작 시 설정됩니다.
토토 꽁 머니절차적 언어 라이브러리는 일반적으로 다음을 사용하여 이러한 방식으로 미리 로드할 수 있습니다. 구문'$libdir/plXXX'어디에서XXXispgsql, 펄, tcl, 또는파이썬.
공유 라이브러리를 미리 로드하면 라이브러리 시작 시간은 라이브러리를 처음 사용할 때는 피하십시오. 그러나 시작하는 시간 각각의 새로운 서버 프로세스는 약간씩 증가할 수 있습니다. 프로세스는 라이브러리를 사용하지 않습니다. 따라서 이 매개변수를 권장토토 꽁 머니. 대부분의 세션에서 사용되는 라이브러리에만 해당됩니다.
참고:Windows 호스트의 경우 서버에 라이브러리를 미리 로드 중 start는 각각의 새 서버를 시작하는 데 필요한 시간을 줄이지 않습니다. 프로세스; 각 서버 프로세스는 모든 사전 로드 라이브러리를 다시 로드토토 꽁 머니. 그러나shared_preload_libraries아직 일부 공유 라이브러리는 Windows 호스트에서 유용토토 꽁 머니. 포스트마스터 시작 시에만 발생하는 특정 작업을 수행토토 꽁 머니. (예를 들어, 공유 라이브러리는 경량을 예약해야 할 수도 있습니다. 잠금이나 공유 메모리는 포스트마스터 이후에는 그렇게 할 수 없습니다. 시작되었습니다).
지정된 라이브러리를 찾을 수 없으면 서버는 실패토토 꽁 머니 시작토토 꽁 머니.
모든 토토 꽁 머니 지원 라이브러리에는"마법 블록"보증을 위해 확인되었습니다. 호환성. 이러한 이유로 토토 꽁 머니이 아닌 라이브러리는 이런 식으로 로드됩니다.
실행 중PostgreSQL : 문서 : 9.3 : 와이즈 토토그리고PostgreSQL : 문서 : 9.3 : 토토 커뮤니티명령, 시스템 추정치를 추적하는 내부 카운터를 유지합니다. 수행되는 다양한 I/O 작업의 비용. 때 누적 비용이 한도에 도달함(다음으로 지정됨)vacuum_cost_limit), 작업은 다음과 같이 지정된 짧은 시간 동안 대기 상태가 됩니다.vacuum_cost_delay. 그러면 재설정됩니다. 카운터를 실행하고 계속 실행합니다.
이 기능의 목적은 관리자가 동시 데이터베이스 활동에 대한 이러한 명령의 I/O 영향. 중요하지 않은 상황이 많이 있습니다. 다음과 같은 유지 관리 명령진공그리고분석빨리 끝내세요; 그러나 그것은 일반적으로 이러한 명령이 크게 중요하지 않다는 점은 매우 중요합니다. 다른 데이터베이스를 수행하는 시스템의 기능을 방해합니다. 운영. 비용 기반 진공 지연은 다음과 같은 방법을 제공합니다. 이를 달성하려면 관리자가 필요합니다.
이 기능은 수동으로 발행된 경우 기본적으로 비활성화되어 있습니다.진공명령. 활성화하려면 다음을 설정하세요.vacuum_cost_delay0이 아닌 변수 값.
프로세스가 절전 모드로 전환되는 시간(밀리초) 비용 한도를 초과한 경우. 기본값은 0입니다. 이는 비용 기반 진공 지연 기능을 비활성화합니다. 양수 값 비용 기반 진공 청소를 활성화합니다. 많은 시스템에서 수면 지연의 효과적인 해결 방법은 10밀리초입니다. 설정vacuum_cost_delay다음이 아닌 값으로 10의 배수는 로 설정한 것과 동일한 결과를 가질 수 있습니다. 다음으로 높은 10의 배수입니다.
비용 기반 진공 청소를 사용할 때 적절한 값vacuum_cost_delay보통 아주 작습니다. 아마도 10~20밀리초 정도일 것입니다. 진공 자원 조정 소비는 다른 진공 비용을 변경하여 수행하는 것이 가장 좋습니다. 매개변수.
공유 폴더에서 발견된 버퍼를 진공 청소하는 데 드는 예상 비용 버퍼 캐시. 버퍼 풀을 잠그는 데 드는 비용을 나타내며, 공유 해시 테이블을 조회하고 페이지의 내용을 스캔합니다. 는 기본값은 1입니다.
읽어야 하는 버퍼를 비우기 위한 예상 비용 디스크에서. 이는 버퍼 풀을 잠그려는 노력을 나타냅니다. 공유 해시 테이블을 조회하고, 원하는 블록을 읽습니다. 디스크를 만들고 그 내용을 스캔토토 꽁 머니. 기본값은 10입니다.
진공이 블록을 수정할 때 청구되는 예상 비용입니다. 이전에는 깨끗했습니다. 이는 플러시하는 데 필요한 추가 I/O를 나타냅니다. 더티 블록을 다시 디스크로 보냅니다. 기본값은 20입니다.
진공 청소 과정을 유발하는 누적 비용 자. 기본값은 200입니다.
참고:중요한 특정 작업이 있습니다 잠금이 발생하므로 최대한 빨리 완료해야 합니다. 이러한 작업 중에는 비용 기반 진공 지연이 발생하지 않습니다. 따라서 비용이 이전보다 훨씬 더 많이 축적될 가능성이 있습니다. 지정된 한도. 이러한 경우 쓸데없이 긴 지연을 방지하려면 실제 지연은 다음과 같이 계산됩니다.vacuum_cost_delay * accumulated_balance / vacuum_cost_limit최대vacuum_cost_delay * 4.
'라는 별도의 서버 프로세스가 있습니다.배경 작가, 그 기능은 발행입니다 의 쓰기"더러운"(신규 또는 수정됨) 공유 버퍼. 서버가 프로세스하도록 공유 버퍼를 작성합니다. 사용자 쿼리를 처리할 때 쓰기를 기다릴 필요가 거의 없거나 전혀 없습니다. 발생합니다. 그러나 배경 작가는 전체적으로 그물을 발생시킵니다. I/O 로드가 증가합니다. 왜냐하면 반복적으로 더티된 페이지는 그렇지 않으면 체크포인트 간격당 한 번만 기록됩니다. 배경 작가가 더러워지면 여러 번 쓸 수도 있습니다. 같은 간격. 이 하위 섹션에서 논의된 매개변수는 다음과 같습니다. 지역적 필요에 맞게 동작을 조정하는 데 사용됩니다.
백그라운드에 대한 활동 라운드 간의 지연을 지정합니다. 작가. 각 라운드에서 작가는 일정 수의 글을 씁니다. 더티 버퍼(다음 매개변수로 제어 가능) 그러면 동안 잔다bgwriter_delay밀리초, 그리고 반복합니다. 버퍼 풀에 더티 버퍼가 없는 경우 하지만, 관계없이 더 긴 수면 상태로 들어갑니다.bgwriter_delay. 기본값은 200입니다. 밀리초(200ms). 많은 경우에 참고하세요 시스템에서 수면 지연의 효과적인 해결 방법은 10입니다. 밀리초; 설정bgwriter_delay에 10의 배수가 아닌 값은 다음과 같은 결과를 가질 수 있습니다. 다음으로 높은 10의 배수로 설정합니다. 이 매개변수는 에만 설정되어야 합니다.토토 꽁 머니.conf파일 또는 서버 명령줄에서.
각 라운드마다 이만큼의 버퍼만 기록됩니다. 배경작가. 이것을 0으로 설정하면 배경이 비활성화됩니다. 글쓰기. (별도로 관리되는 체크포인트는 전용 보조 프로세스는 영향을 받지 않습니다.) 기본값은 다음과 같습니다. 버퍼 100개. 이 매개변수는에서만 설정할 수 있습니다.토토 꽁 머니.conf파일 또는 서버 명령 라인.
각 라운드에 기록된 더티 버퍼 수는 다음을 기준으로 합니다. 서버 프로세스에 필요한 새 버퍼 수 최근 라운드 중. 평균 최근 수요에 다음을 곱합니다.bgwriter_lru_multiplier도착하다 작업 중에 필요할 버퍼 수 추정 다음 라운드. 더티 버퍼는 그만큼 많아질 때까지 기록됩니다. 깨끗하고 재사용 가능한 버퍼를 사용할 수 있습니다. (단, 그 이상은 안됩니다.bgwriter_lru_maxpages버퍼는 라운드별로 기록됩니다.) 따라서 1.0 설정은 다음을 나타냅니다."제때에"정확한 쓰기 정책 필요할 것으로 예상되는 버퍼 수. 더 큰 값은 다음을 제공합니다. 수요 급증에 대한 일부 완충 효과가 있지만 값이 작을수록 의도적으로 쓰기가 서버 프로세스에 의해 수행되도록 남겨두었습니다. 는 기본값은 2.0입니다. 이 매개변수는에서만 설정할 수 있습니다.토토 꽁 머니.conf파일 또는 서버 명령 라인.
더 작은 값bgwriter_lru_maxpages그리고bgwriter_lru_multiplier줄이세요 백그라운드 작성기로 인해 추가 I/O 로드가 발생하지만 더 많이 발생토토 꽁 머니. 서버 프로세스가 쓰기 작업을 수행해야 할 가능성이 높습니다. 대화형 쿼리가 지연됩니다.
동시 디스크 I/O 작업 수를 설정합니다.토토 꽁 머니실행될 수 있을 것으로 예상됩니다. 동시에. 이 값을 높이면 I/O 수가 늘어납니다. 모든 개인이 수행하는 작업포스트그레SQL세션이 다음에서 시작을 시도합니다. 평행. 허용되는 범위는 1~1000이며, 비활성화하려면 0입니다. 비동기 I/O 요청 발행. 현재 이 설정만 비트맵 힙 스캔에 영향을 미칩니다.
이 설정의 좋은 시작점은 별도의 RAID 0 스트라이프 또는 RAID 1 미러로 구성된 드라이브 데이터베이스. (RAID 5의 경우 패리티 드라이브는 계산되지 않습니다.) 그러나 여러 쿼리가 실행되어 데이터베이스가 자주 사용되는 경우 동시 세션에서는 더 낮은 값으로도 충분할 수 있습니다. 디스크 어레이가 사용 중입니다. 디스크를 계속 사용하는 데 필요한 것보다 높은 값 추가 CPU 오버헤드만 발생합니다.
메모리 기반 스토리지 또는 RAID와 같은 보다 이국적인 시스템의 경우 버스 대역폭에 의해 제한되는 어레이의 경우 올바른 값은 다음과 같을 수 있습니다. 사용 가능한 I/O 경로 수 일부 실험은 다음과 같습니다. 최고의 가치를 찾는 데 필요합니다.
비동기 I/O는 효과적인 방법에 따라 달라집니다.posix_fadvise함수, 일부 작동
시스템 부족. 기능이 없으면 이것을 설정하십시오
매개변수를 0이 아닌 다른 값으로 설정하면 오류가 발생합니다. 일부에서는
운영 체제(예: Solaris)에는 기능이 있지만
실제로는 아무것도 하지 않습니다.
| 이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 | 
| 연결 및 인증 | 위로 | 미리 쓰기 로그 |