젠 토토 : 문서 : 9.6 : 젠 토토 | |||
---|---|---|---|
PostgreSQL : 문서 : 9.6 : 서버 응용 토토 사이트 추천 | PostgreSQL : 문서 : 9.6 : 서버 응용 토토 사이트 추천 | PostgreSQL : 문서 : 9.6 : 외부 젠 토토 |
젠 토토A의 생성 지원"따뜻한 대기"데이터베이스 서버. 특정 수정이 필요한 경우 제작 준비 프로그램과 사용자 정의 가능한 템플릿으로 설계되었습니다.
젠 토토대기하도록 설계되었습니다Restore_Command, 표준 아카이브 복구를 따뜻한 대기 작업으로 바꾸는 데 필요합니다. 다른 구성이 필요하며,이 모든 구성은 주 서버 매뉴얼에 설명되어 있습니다 (참조PostgreSQL : 문서 : 9.6 : 로그-쉽 토토 캔 서버).
사용할 대기 서버를 구성하려면젠 토토, 이것을 그것에 넣습니다복구 .conf구성 파일 :
Restore_command = '젠 토토Archivedir%f %p %r '
여기서ArchivedirWAL 세그먼트 파일을 복원 해야하는 디렉토리입니다.
ifRestartWalfile일반적으로를 사용하여 지정됩니다.%r매크로, 그러면이 파일의 논리적으로 논리적으로 모든 책치 파일이 제거됩니다Archivelocation. 이로 인해 충돌 사고 기능을 유지하면서 유지해야 할 파일의 수가 최소화됩니다. 이 매개 변수의 사용은Archivelocation이 특정 대기 서버의 과도 준비 영역이지만not언제Archivelocation장기 WAL 아카이브 영역으로 의도되어 있습니다.
젠 토토가정합니다Archivelocation서버 소유 사용자가 읽을 수있는 디렉토리입니다. 만약에RestartWalfile(또는-K) 지정되어 있습니다.Archivelocation디렉토리도 쓸 수 있어야합니다.
a에 실패하는 방법에는 두 가지가 있습니다."따뜻한 대기"마스터 서버가 실패한 경우 데이터베이스 서버 :
스마트 장애 조치에서 아카이브에서 사용 가능한 모든 왈 파일을 적용한 후 서버가 제기됩니다. 이로 인해 대기 서버가 뒤쳐져도 데이터 손실이 발생하지만 적용되지 않은 WAL이 많으면 대기 서버가 준비되기까지 오랜 시간이 걸릴 수 있습니다. 스마트 장애 조치를 트리거하려면 단어가 포함 된 트리거 파일을 만듭니다스마트, 또는 그냥 만들고 비워 두십시오.
빠른 장애 조치에서 서버는 즉시 제기됩니다. 아직 적용되지 않은 아카이브의 모든 왈 파일은 무시되며 해당 파일의 모든 트랜잭션이 손실됩니다. 빠른 장애 조치를 트리거하려면 트리거 파일을 만들고 단어를 작성하십시오빠른안으로.젠 토토정의 된 간격 내에 새 월 파일이 나타나지 않으면 빠른 장애 조치를 자동으로 실행하도록 구성 할 수도 있습니다.
젠 토토다음 명령 줄 인수를 수락합니다 :
useCP또는copy아카이브에서 WAL 파일을 복원하려면 명령. 이것은 유일한 지원 행동 이므로이 옵션은 쓸모가 없습니다.
디버그 로깅 출력을 많이 인쇄Stderr.
파일 제거Archivelocation따라서 현재 버전이 아카이브에 보관되기 전에이 많은 왈 파일을 보관하지 않도록하십시오. 0 (기본값)은에서 파일을 제거하지 않는 것을 의미합니다.보관. 이 매개 변수는이면 조용히 무시됩니다.RestartWalfile는 올바른 아카이브 컷오프 지점을 결정하는 데 더 정확하기 때문에 지정되어 있습니다. 이 매개 변수의 사용은입니다.감가 상각PostgreSQL8.3; A를 지정하는 것이 더 안전하고 효율적입니다.RestartWalfile매개 변수. 너무 작은 설정으로 인해 대기 서버를 다시 시작하는 데 필요한 파일을 제거 할 수 있지만 너무 큰 설정은 아카이브 공간을 낭비합니다.
사본이 실패한 경우 복사 명령을 재 시도하도록 최대 횟수를 설정하십시오 (기본값 3). 각각의 실패 후, 우리는 기다립니다Sleeptime * NUM_RETRIES대기 시간이 점진적으로 증가하도록합니다. 따라서 기본적으로 5 초, 10 초, 15 초 동안 대기 서버에 실패를보고하기 전에 기다립니다. 이것은 복구의 끝으로 해석 될 것이며 그 결과 대기는 완전히 나타납니다.
테스트 사이에 수면을 위해 수면으로 초등록 (최대 60, 기본값 5)을 설정하여 복원 할 WAL 파일이 아카이브에서 아직 사용할 수 있는지 확인하십시오. 기본 설정이 반드시 권장되는 것은 아닙니다. 찾다PostgreSQL : 문서 : 9.6 : 로그-쉽 토토 캔 서버토론을 위해.
존재하여 장애 조치를 일으키는 트리거 파일을 지정하십시오. 동일한 시스템에 여러 서버가 존재할 때 어떤 서버가 트리거되는지에 대한 혼란을 피하기 위해 구조화 된 파일 이름을 사용하는 것이 좋습니다. 예를 들어/tmp/pgsql.trigger.5432.
인쇄젠 토토버전 및 종료.
다음 WAL 파일을 기다리는 최대 초의 초를 설정 한 후 빠른 장애 조치가 수행됩니다. 0의 설정 (기본값)은 영원히 기다리는 것을 의미합니다. 기본 설정이 반드시 권장되는 것은 아닙니다. 찾다PostgreSQL : 문서 : 9.6 : 로그-쉽 토토 캔 서버토론을 위해.
도움말 표시젠 토토명령 줄 인수 및 종료.
젠 토토와 함께 작동하도록 설계되었습니다postgresql8.2 이상.
PostgreSQL8.3 제공%r매크로.젠 토토보관 해야하는 마지막 파일을 알고 있습니다. 와 함께PostgreSQL8.2,-K아카이브 정리가 필요한 경우 옵션을 사용해야합니다. 이 옵션은 8.3으로 사용할 수 있지만 사용은 더 이상 사용되지 않습니다.
PostgreSQL8.4 제공복구 _end_command옵션. 이 옵션이 없으면 남은 트리거 파일이 위험 할 수 있습니다.
젠 토토C로 작성되었으며 수정하기 쉬운 소스 코드가 있으며, 자신의 요구에 맞게 수정하기 위해 특별히 지정된 섹션이 있습니다
Linux 또는 UNIX 시스템에서 사용할 수 있습니다.
archive_command = 'cp %p .../archive/ %f' Restore_command = '젠 토토 -D -S 2 -T /TMP/PGSQL.TRIGGER.5442 .../ARCHIVE %F %P %R 2 standby.log' recover_end_command = 'rm -f /tmp/pgsql.trigger.5442'
아카이브 디렉토리가 대기 서버에 물리적으로 위치한 곳archive_commandNFS에 걸쳐 액세스하고 있지만 파일은 대기에 로컬입니다 (사용 가능ln). 이것은 :
생산 디버깅 출력에서standby.log
다음 WAL 파일 가용성 수표 사이에 2 초 동안 수면
트리거 파일이 호출 될 때만 대기 중지/tmp/pgsql.trigger.5442나타나고 컨텐츠에 따라 장애 조치를 수행합니다
복구가 끝나면 트리거 파일 제거
아카이브 디렉토리에서 필요한 파일 제거
Windows에서 사용할 수 있습니다 :
archive_command = 'copy %p ... \\ archive \\ %f' Restore_command = '젠 토토 -D -S 5 -T C : \ PGSQL.TRIGGER.5442 ... \ Archive %F %P %R 2 standby.log' recover_end_command = 'del c : \ pgsql.trigger.5442'
백 슬래시는 두 배가되어야합니다archive_command그러나notinRestore_command또는복구 _end_command. 이것은 :
사용copyArchive에서 WAL 파일을 복원하는 명령
디버깅 출력 생산standby.log
다음 WAL 파일 가용성 수표 사이에 5 초 동안 수면
트리거 파일이 전화 할 때만 대기 중지C : \ pgsql.trigger.5442나타나고 컨텐츠에 따라 장애 조치를 수행
복구가 종료 될 때 트리거 파일 제거
아카이브 디렉토리에서 필요한 파일 제거
theCOPYWindows의 명령은 파일이 완전히 복사되기 전에 최종 파일 크기를 설정합니다.젠 토토. 그러므로젠 토토WAITSSleeptime일단 올바른 파일 크기가 나타나면 초. gnuwin32 'sCP파일 사본이 완료된 후에 만 파일 크기를 설정합니다.
Windows 예제가 사용하므로COPY양쪽 끝에서, 둘 중 하나 또는 두 서버 모두 네트워크를 통해 아카이브 디렉토리에 액세스 할 수 있습니다.