와이즈 토토 — a에서 미리 쓰기 로그 스트리밍포스트그레SQL서버
와이즈 토토 [옵션...]
와이즈 토토실행 중인 프로그램에서 미리 쓰기 로그를 스트리밍하는 데 사용됩니다.포스트그레SQL클러스터. 미리 쓰기 로그는 스트리밍 복제 프로토콜을 사용하여 스트리밍되며 파일의 로컬 디렉터리에 기록됩니다. 이 디렉토리는 특정 시점 복구를 사용하여 복원을 수행하기 위한 아카이브 위치로 사용될 수 있습니다(참조)토토 커뮤니티 PostgreSQL : 문서 : 12 : 25.3. 연속 보관 및 시점 복구 (PITR)).
와이즈 토토서버에서 생성되는 미리 쓰기 로그를 실시간으로 스트리밍하고 다음과 같이 세그먼트가 완료될 때까지 기다리지 않습니다.archive_command그렇습니다. 이러한 이유로 설정할 필요가 없습니다.archive_timeout사용 시와이즈 토토.
PostgreSQL 대기 서버의 WAL 수신자와는 달리와이즈 토토기본적으로 WAL 파일이 닫힐 때만 WAL 데이터를 플러시합니다. 옵션--동기9583_9642와이즈 토토WAL을 적용하지 않습니다. 다음과 같은 경우 동기 대기 상태가 되도록 허용해서는 안 됩니다.동기_커밋같음remote_apply. 만약 그렇다면, 결코 따라잡지 못하는 대기 상태로 나타나며 트랜잭션 커밋을 차단하게 됩니다. 이를 방지하려면 적절한 값을 구성해야 합니다.synchronous_standby_names또는 지정애플리케이션_이름for와이즈 토토일치하지 않거나 값을 변경함동기_커밋이외의 것remote_apply.
미리 쓰기 로그는 일반을 통해 스트리밍됩니다.PostgreSQL연결하고 복제 프로토콜을 사용합니다. 연결은 슈퍼유저 또는 다음을 가진 사용자와 이루어져야 합니다.복제권한(참조PostgreSQL : 문서 : 12 : 21.2. 스포츠 토토 사이트 속성) 및pg_hba.conf복제 연결을 허용해야 합니다. 서버는 또한 다음과 같이 구성되어야 합니다.max_wal_senders스트림에 하나 이상의 세션을 사용할 수 있을 만큼 높게 설정하세요.
미리 쓰기 로그 스트리밍의 시작점은 다음과 같이 계산됩니다.와이즈 토토시작:
먼저, WAL 세그먼트 파일이 기록된 디렉토리를 스캔하고 다음 WAL 세그먼트 파일의 시작점을 시작점으로 사용하여 가장 최근에 완성된 세그먼트 파일을 찾습니다.
이전 방법으로 시작점을 계산할 수 없는 경우 서버가 보고한 최신 WAL 플러시 위치가 사용됩니다.IDENTIFY_SYSTEM명령.
연결이 끊어지거나 치명적이지 않은 오류로 인해 처음에 연결할 수 없는 경우,와이즈 토토연결을 무기한 재시도하고 가능한 한 빨리 스트리밍을 다시 설정합니다. 이 동작을 방지하려면-n매개변수.
치명적인 오류가 없다면,와이즈 토토에 의해 종료될 때까지 실행됩니다SIGINT신호 (제어+C).
-D디렉토리--디렉토리=디렉토리출력을 쓸 디렉터리.
이 매개변수는 필수입니다.
-Elsn--endpos=lsn수신이 지정된 LSN에 도달하면 자동으로 복제를 중지하고 일반 종료 상태 0으로 종료합니다.
LSN이 정확히 동일한 레코드가 있는 경우lsn, 기록이 처리됩니다.
--존재하지 않는 경우다음의 경우 오류를 발생시키지 마십시오.--생성-슬롯이(가) 지정되었으며 지정된 이름의 슬롯이 이미 존재합니다.
-n--루프 없음연결 오류를 반복하지 마십시오. 대신 오류가 발생하면 즉시 종료하세요.
--동기화 없음이 옵션으로 인해와이즈 토토WAL 데이터를 강제로 디스크에 플러시하지 않습니다. 이는 더 빠르지만 후속 운영 체제 충돌로 인해 WAL 세그먼트가 손상될 수 있음을 의미합니다. 일반적으로 이 옵션은 테스트에 유용하지만 프로덕션 배포에서 WAL 보관을 수행할 때는 사용하면 안 됩니다.
이 옵션은 다음과 호환되지 않습니다.--동기.
-s간격--상태-간격=간격서버로 다시 전송되는 상태 패킷 사이의 시간(초)을 지정합니다. 이를 통해 서버의 진행 상황을 더 쉽게 모니터링할 수 있습니다. 값이 0이면 주기적인 상태 업데이트가 완전히 비활성화됩니다. 단, 시간 초과 연결 끊김을 방지하기 위해 서버에서 요청할 때 업데이트가 계속 전송됩니다. 기본값은 10초입니다.
-S슬롯 이름--슬롯=슬롯 이름요구와이즈 토토기존 복제 슬롯을 사용하려면(참조섹션 26.2.6). 이 옵션을 사용하면,와이즈 토토각 세그먼트가 디스크에 동기화된 시기를 나타내는 플러시 위치를 서버에 보고하여 서버가 별도로 필요하지 않은 경우 해당 세그먼트를 제거할 수 있도록 합니다.
복제 클라이언트가와이즈 토토동기 대기로 서버에 구성된 경우 복제 슬롯을 사용하면 플러시 위치를 서버에 보고하지만 WAL 파일이 닫힐 때만 가능합니다. 따라서 해당 구성으로 인해 기본 트랜잭션이 오랜 시간 동안 대기하고 사실상 만족스럽게 작동하지 않게 됩니다. 옵션--동기(아래 참조)가 올바르게 작동하려면 추가로 지정되어야 합니다.
--동기WAL 데이터를 수신한 후 즉시 디스크에 플러시합니다. 또한 플러시 후 즉시 상태 패킷을 서버로 다시 보냅니다.--상태-간격.
이 옵션은 복제 클라이언트가 다음의 경우에 지정되어야 합니다.와이즈 토토적시에 피드백이 서버에 전송되도록 하기 위해 서버에 동기 대기로 구성되어 있습니다.
-v--상세상세 모드를 활성화합니다.
-Z레벨--압축=레벨미리 쓰기 로그의 gzip 압축을 활성화하고 압축 수준을 지정합니다(0~9, 0은 비압축, 9는 최고 압축). 접미사.gz모든 파일 이름에 자동으로 추가됩니다.
다음 명령줄 옵션은 데이터베이스 연결 매개변수를 제어합니다.
-dconnstr--dbname=connstr서버에 연결하는 데 사용되는 매개변수를 다음과 같이 지정합니다.연결 문자열; 이는 충돌하는 명령줄 옵션을 재정의합니다.
옵션이 호출되었습니다.--dbname다른 클라이언트 응용프로그램과의 일관성을 위해, 그러나 그 이유는와이즈 토토클러스터의 특정 데이터베이스에 연결되지 않습니다. 연결 문자열의 데이터베이스 이름은 무시됩니다.
-h호스트--호스트=호스트서버가 실행 중인 시스템의 호스트 이름을 지정합니다. 값이 슬래시로 시작하는 경우 Unix 도메인 소켓의 디렉터리로 사용됩니다. 기본값은에서 가져옵니다.PGHOST환경 변수, 설정된 경우 그렇지 않으면 Unix 도메인 소켓 연결이 시도됩니다.
-p포트--포트=포트서버가 연결을 수신하고 있는 TCP 포트 또는 로컬 Unix 도메인 소켓 파일 확장자를 지정합니다. 기본값은PGPORT환경 변수(설정된 경우) 또는 컴파일된 기본값.
-U사용자 이름--사용자 이름=사용자 이름연결할 사용자 이름입니다.
-w--비밀번호 없음비밀번호 프롬프트를 발행하지 마십시오. 서버가 비밀번호 인증을 요구하는데 다음과 같은 다른 방법으로 비밀번호를 사용할 수 없는 경우.pgpass파일을 사용하면 연결 시도가 실패합니다. 이 옵션은 비밀번호를 입력할 사용자가 없는 일괄 작업 및 스크립트에 유용할 수 있습니다.
-W--비밀번호포스와이즈 토토데이터베이스에 연결하기 전에 비밀번호를 묻는 메시지를 표시합니다.
이 옵션은 결코 필수가 아닙니다. 왜냐하면와이즈 토토서버가 비밀번호 인증을 요구하면 자동으로 비밀번호를 묻는 메시지를 표시합니다. 그러나와이즈 토토서버가 비밀번호를 원하는지 알아내는 연결 시도를 낭비하게 됩니다. 어떤 경우에는 입력할 가치가 있습니다.-W추가 연결 시도를 피하기 위해.
와이즈 토토물리적 복제 슬롯을 제어하기 위해 다음 두 가지 작업 중 하나를 수행할 수 있습니다.
--생성-슬롯다음에 지정된 이름으로 새로운 물리적 복제 슬롯을 생성합니다.--슬롯그런 다음 종료하세요.
--드롭 슬롯에 지정된 이름을 가진 복제 슬롯을 삭제합니다.--슬롯그런 다음 종료하세요.
다른 옵션도 사용할 수 있습니다:
-V--버전인쇄와이즈 토토버전 및 종료.
-?--도움말다음에 관한 도움말 표시와이즈 토토명령줄 인수 및 종료.
와이즈 토토에 의해 종료되면 상태 0으로 종료됩니다.SIGINT신호. (이것이 일반적인 종료 방법입니다. 따라서 오류가 아닙니다.) 치명적인 오류 또는 기타 신호의 경우 종료 상태는 0이 아닙니다.
이 유틸리티는 대부분의 다른 유틸리티와 같습니다.PostgreSQL유틸리티는 지원되는 환경 변수를 사용합니다.libpq(참조PostgreSQL : 문서 : 12 : 33.14. 환경 토토 핫).
환경 변수PG_COLOR진단 메시지에 색상을 사용할지 여부를 지정합니다. 가능한 값은 다음과 같습니다.항상, 자동그리고절대로.
사용 시와이즈 토토대신에archive_command주요 WAL 백업 방법으로 복제 슬롯을 사용하는 것이 좋습니다. 그렇지 않으면 서버는 백업되기 전에 미리 쓰기 로그 파일을 자유롭게 재활용하거나 제거할 수 있습니다. 왜냐하면 로그 파일에는 어떤 정보도 없기 때문입니다.archive_command또는 WAL 스트림이 얼마나 멀리 보관되었는지에 대한 복제 슬롯. 그러나 수신자가 WAL 데이터를 계속 가져오지 않으면 복제 슬롯이 서버의 디스크 공간을 채울 것이라는 점에 유의하세요.
와이즈 토토소스 클러스터에서 그룹 권한이 활성화된 경우 수신된 WAL 파일에 대한 그룹 권한을 보존합니다.
다음 서버에서 미리 쓰기 로그를 스트리밍하려면mydb서버그리고 로컬 디렉토리에 저장하세요/usr/local/pgsql/아카이브:
$와이즈 토토 -h mydbserver -D /usr/local/pgsql/archive