윈 토토 : 문서 : 9.4 : 윈 토토 | |||
---|---|---|---|
PostgreSQL : 문서 : 9.4 : 토토 캔 | PostgreSQL : 문서 : 9.4 : PostgreSQL 서버 응용 범퍼카 토토 | 다음 |
범퍼카 토토[-f] [-n] [-o OID] [-x xid] [-e xid_epoch] [-m MXID,MXID] [-o mxoff] [-l xlogfile]Datadir
범퍼카 토토WAR (Write-Ahead Log)를 지우고 선택적으로에 저장된 다른 제어 정보를 선택적으로 재설정합니다.PG_CONTROL파일. 이 파일이 손상되면이 기능이 때때로 필요합니다. 그러한 부패로 인해 서버가 시작되지 않을 때만 최후의 수단으로 만 사용해야합니다.
이 명령을 실행 한 후 서버를 시작할 수 있어야하지만, 부분적으로 커밋 된 트랜잭션으로 인해 데이터베이스에 일관성이없는 데이터가 포함될 수 있습니다. 즉시 데이터를 버려야합니다. runinitdb및 다시로드. 새로 고침 후 불일치와 필요에 따라 수리를 확인하십시오.
이 유틸리티는 데이터 디렉토리에 대한 읽기/쓰기 액세스가 필요하기 때문에 서버를 설치 한 사용자 만 실행할 수 있습니다. 안전상의 이유로, 명령 줄에 데이터 디렉토리를 지정해야합니다.범퍼카 토토환경 변수를 사용하지 않습니다pgdata.
if범퍼카 토토유효한 데이터를 결정할 수 없다고 불평합니다PG_CONTROL-f(힘) 옵션. 이 경우 타당한 값은 누락 된 데이터로 대체됩니다. 대부분의 필드는 일치 할 것으로 예상 될 수 있지만 다음 OID, 다음 트랜잭션 ID 및 Epoch, 다음 Multitransaction ID 및 오프셋 및 WAL 시작 주소 필드에 수동 지원이 필요할 수 있습니다. 이 필드는 아래에 설명 된 옵션을 사용하여 설정할 수 있습니다. 이 모든 필드에 대한 올바른 값을 결정할 수 없다면-f여전히 사용할 수 있지만 복구 된 데이터베이스는 평소보다 훨씬 더 많은 의심으로 처리해야합니다. 즉시 덤프와 재 장전이 필수적입니다.do not덤프하기 전에 데이터베이스에서 데이터 수정 작업을 실행합니다. 그러한 조치는 부패를 악화시킬 수 있으므로
the-o, -x, -e, -m, -o및-l옵션은 다음 OID, 다음 트랜잭션 ID, 다음 트랜잭션 ID의 epoch, 다음과 오래된 멀티 트랜잭션 ID, 다음 MultItransaction Offset 및 WAL 시작 주소 값을 수동으로 설정할 수 있습니다. 이들은 만 필요합니다범퍼카 토토읽기를 통해 적절한 값을 결정할 수 없습니다PG_CONTROL. 안전한 값은 다음과 같이 결정될 수 있습니다.
다음 거래 ID (의 안전한 값-x) 디렉토리에서 수치 적으로 가장 큰 파일 이름을 찾아 결정할 수 있습니다PG_CLOG데이터 디렉토리 아래에서 하나를 추가 한 다음 1048576을 곱합니다. 파일 이름은 16 진수입니다. 일반적으로 옵션 값을 16 진수로 지정하는 것이 가장 쉽습니다. 예를 들어, if0011에서 가장 큰 항목입니다PG_CLOG, -x 0x1200000작동합니다 (5 개의 후행 제로는 적절한 승수를 제공합니다).
다음 Multitransaction ID의 안전한 값 (의 첫 부분-m) 디렉토리에서 숫자로 가장 큰 파일 이름을 찾아 결정할 수 있습니다PG_MULTIXACT/오프셋데이터 디렉토리 아래에서 하나를 추가 한 다음 65536을 곱합니다. 반대로, 가장 오래된 다중 비계 ID의 안전한 값 (의 안전한 값 (-m)는 동일한 디렉토리에서 수치 적으로 가장 작은 파일 이름을 찾고 65536을 곱하여 결정할 수 있습니다. 위와 같이 파일 이름은 16 진수로 이루어 지므로이를 수행하는 가장 쉬운 방법은 16 진수에서 옵션 값을 지정하는 것입니다.
다음 Multitransaction Offset (에 대한 안전한 값-o) 디렉토리에서 숫자로 가장 큰 파일 이름을 찾아 결정할 수 있습니다PG_MULTIXACT/회원데이터 디렉토리 아래에서 하나를 추가 한 다음 52352를 곱합니다. 위와 같이 파일 이름은 16 진수입니다. 추가 제로의 위의 것과 같은 간단한 레시피는 없습니다.
WAL 시작 주소 (-l) 현재 디렉토리에 존재하는 WAL 세그먼트 파일 이름보다 커야합니다PG_XLOG데이터 디렉토리 아래. 이 이름은 또한 16 진수이며 세 부분이 있습니다. 첫 번째 부분은입니다."타임 라인 ID"일반적으로 동일하게 유지해야합니다. 예를 들어, if000000010000320000004A에서 가장 큰 항목입니다PG_XLOG, 사용-L 00000000000320000004B이상.
참고 : 범퍼카 토토자체가 파일을 봅니다PG_XLOG기본값을 선택합니다-l마지막 기존 파일 이름을 넘어 설정. 따라서 수동 조정-l현재 존재하지 않는 WAL 세그먼트 파일을 알고있는 경우에만 필요합니다PG_XLOG16417_16482PG_XLOG완전히 잃어 버렸습니다.
데이터베이스에서 가장 큰 다음 OID를 넘어서는 다음 OID를 결정할 수있는 쉬운 방법은 없지만 다행히도 다음 OID 설정을 올바르게 얻는 것이 중요하지 않습니다..
트랜잭션 ID Epoch는 실제로 설정된 필드를 제외하고 데이터베이스의 어느 곳에도 저장되지 않습니다범퍼카 토토, 따라서 모든 값은 데이터베이스 자체에 관한 한 작동합니다. 와 같은 복제 시스템을 보장하기 위해이 값을 조정해야 할 수도 있습니다.Slony-I올바르게 작업 - 그렇다면 다운 스트림 복제 데이터베이스 상태에서 적절한 값을 얻을 수 있어야합니다.
the-n(작동 없음) 옵션 지침범퍼카 토토재구성 된 값을 인쇄하려면PG_CONTROL그리고 변경 될 값을 변경 한 다음 아무것도 수정하지 않고 종료합니다. 이것은 주로 디버깅 도구이지만 허용하기 전에 생계 점검으로 유용 할 수 있습니다범퍼카 토토Real로 진행하려면.
the-vand-버전옵션 인쇄범퍼카 토토버전 및 종료. 옵션-?and-help지원되는 인수 쇼 및 출구