pg_dumpall유틸리티입니다 쓰기 ("덤핑") 모두PostgreSQL클러스터의 토토 결과로의 토토 결과 스크립트 파일. 스크립트 파일에는SQL입력으로 사용할 수있는 명령PSQL토토 결과를 복원하려면. 전화를 통해 이것을합니다pg_dump클러스터의 각 토토 결과에 대해pg_dumpall또한 글로벌을 덤프합니다 모든 토토 결과에 공통적 인 개체. (pg_dump이 객체를 저장하지 않습니다.) 이것 현재 토토 결과 사용자 및 그룹에 대한 정보가 포함되어 있습니다. 테이블 스페이스 및 적용되는 액세스 권한과 같은 속성 전체 토토 결과에.
이후pg_dumpall테이블을 읽습니다 모든 토토 결과에서 완전한 덤프를 생성하기 위해 토토 결과 슈퍼 사용자. 또한 당신 저장된 스크립트를 순서대로 실행하려면 슈퍼 사용자 권한이 필요합니다. 사용자와 그룹을 추가하고 토토 결과를 만들 수 있습니다.
SQL 스크립트는 표준 출력에 기록됩니다. 사용하십시오 [-f | 파일] 옵션 또는 쉘 연산자를 파일로 리디렉션 할 수 있습니다.
pg_dumpall연결해야합니다 여러 번PostgreSQL서버 (토토 결과 당 한 번). 비밀번호 인증을 사용하는 경우 매번 암호를 요청합니다. A가있는 것이 편리합니다.~/.pgpass그러한 경우 파일. 보다토토 : 문서 : 9.3 : 비밀번호 파일더 많은 정보.
다음 명령 줄 옵션은 컨텐츠를 제어합니다 출력 형식.
스키마가 아닌 데이터 만 덤프 (데이터 정의)
재현하기 전에 데이터베이스를 청소할 SQL 명령을 포함시킵니다 그들을.드롭역할 및 명령 테이블 스페이스도 추가됩니다.
지정된 파일로 출력을 전송합니다. 이것이 생략되면, 표준 출력이 사용됩니다.
전역 객체 만 덤프 (역할 및 테이블 스페이스), no 토토 결과.
이제 무시되는 더 이상 사용되지 않은 옵션.
덤프 개체 식별자 (OIDs) 모든 테이블에 대한 데이터의 일부로. 사용 이 옵션이 응용 프로그램을 참조하는 경우OID어떤 식 으로든 열 (예 : 외국 키에서 강제). 그렇지 않으면이 옵션을 사용해서는 안됩니다.
원래 토토 결과. 기본적으로pg_dumpall문제변경 소유자또는세션 설정 설정생성 된 스키마 요소의 소유권을 설정하기위한 진술. 이것들 스크립트가 시작되지 않으면 스크립트가 실행되면 진술이 실패합니다. 슈퍼 사용자 (또는 모든 객체를 소유 한 동일한 사용자 스크립트). 모든 사용자가 복원 할 수있는 스크립트를 만들려면 모든 객체의 사용자 소유권을 제공하고 지정합니다-o.
덤프 역할, 데이터베이스 또는 테이블 스페이스가 없습니다.
데이터가 아닌 객체 정의 (스키마) 만 덤프합니다.
트리거를 비활성화 할 때 사용할 슈퍼 사용자 사용자 이름을 지정하십시오. 이것은 만 관련이 있습니다.-disable-triggers사용됩니다. (일반적으로 이것을 떠나고 대신 시작하는 것이 좋습니다. 슈퍼업자로서의 결과 스크립트.)
덤프 테이블 스페이스, 데이터베이스 또는 역할 없음
정점 모드를 지정합니다. 이로 인해pg_dumpall시작/중지 시간을 출력합니다 파일을 덤프하고 표준 오류로 메시지를 진행합니다. 그것은 또한 장점 출력 활성화pg_dump.
인쇄pg_dumpall버전 그리고 출구.
액세스 권한의 덤핑 방지 (Grant/Revoke 명령).
이 옵션은 현장 업그레이드 유틸리티에서 사용하기위한 것입니다. 그것의 사용 다른 목적으로 권장하거나 지원되지 않습니다. 의 행동 옵션은 예고없이 향후 릴리스에서 변경 될 수 있습니다.
덤프 데이터로삽입명령 명시 적 열 이름 (삽입테이블(열, ...) 값 ...). 이것은 만들 것입니다 복원은 매우 느립니다. 주로 덤프를 만드는 데 유용합니다 비에로드 될 수 있습니다.PostgreSQL토토 결과.
이 옵션은 기능에 대한 달러 인용문 사용을 비활성화합니다. 시체, SQL 표준 문자열을 사용하여 인용하도록 강요 통사론.
이 옵션은 데이터 전용 덤프를 작성할 때만 관련이 있습니다. 그것 지시pg_dumpall대상 테이블의 트리거를 일시적으로 비활성화하는 명령 데이터가 다시로드됩니다. 참조 무결성이있는 경우 이것을 사용하십시오 원하지 않는 테이블에서 수표 또는 기타 트리거 데이터를 다시로드하는 동안 호출.
현재, 명령은-disable-triggers슈퍼 서서로 수행해야합니다. 그래서, 당신 의 수퍼 유저 이름도 지정해야합니다.-s, 또는 바람직하게는 결과를 시작하도록주의하십시오 슈퍼업자로서의 스크립트.
덤프 데이터 as삽입명령 (오히려 보다copy). 이것은 복원 할 것입니다 매우 느립니다. 주로로드 할 수있는 덤프를 만드는 데 유용합니다. 비PostgreSQL토토 결과. 재 배열 된 경우 복원이 완전히 실패 할 수 있습니다. 열 순서. 그만큼-Column-Inserts옵션 더 안전하지만 느리게 더 안전합니다.
공유 테이블 잠금 장치를 획득하기 위해 영원히 기다리지 마십시오. 덤프의 시작. 대신 테이블을 잠글 수 없으면 실패하십시오 지정된 내에서타임 아웃. 그만큼 타임 아웃은에 의해 허용되는 형식 중 하나로 지정 될 수 있습니다.set state_timeout. 허용 값은 다양합니다 덤프하는 서버 버전에 따라 정수 수의 밀리 초 수는 모든 버전에서 허용됩니다. 7.3. 이 옵션은 7.3 이전 서버에서 덤프 할 때 무시됩니다.
보안 레이블을 덤프하지 마십시오.
테이블 스페이스를 만들거나 선택하기 위해 명령을 출력하지 마십시오 물체의 테이블 스페이스. 이 옵션을 사용하면 모든 객체가 있습니다 복원 중 기본값 인 테이블 스페이스에서 생성됩니다.
무제한 테이블의 내용을 버리지 마십시오. 이 옵션에는 없음이 없습니다 테이블 정의 (스키마)가 덤프되는지 여부에 미치는 영향; 테이블 데이터 덤프 만 억제합니다.
모든 식별자의 강제 인용. 이 옵션은 권장됩니다 서버에서 데이터베이스를 덤프 할 때PostgreSQL메이저 버전은와 다릅니다.pg_dumpall's 또는 출력 시점 다른 전공의 서버에로드되기위한 것입니다. 버전. 기본적으로PG_DUMPALL자체 전공에 예약 된 단어 인 식별자 만 인용 버전. 이것은 때때로 호환성 문제가 발생합니다 약간가있을 수있는 다른 버전의 서버 처리 다른 예약 단어 세트. 사용-Quote-all-Idnifiers그러한 문제를 방지합니다 읽기 어려운 덤프 스크립트의 가격.
출력 SQL-Standard세션 설정 권한 부여대신 명령변경 소유자개체 소유권을 결정하는 명령. 이것은 더 많은 표준을 덤프하여 호환되지만의 역사에 따라 덤프의 물체는 제대로 복원되지 않을 수 있습니다.
도움말 표시pg_dumpall명령 줄 인수 및 종료
다음 명령 줄 옵션은 데이터베이스를 제어합니다 연결 매개 변수.
서버에 연결하는 데 사용되는 매개 변수를 연결 문자열. 보다섹션 31.1.1더 많은 정보.
옵션은입니다.-dbname다른 클라이언트 응용 프로그램과 일관성이 있지만pg_dumpall연결해야합니다 많은 데이터베이스, 연결 문자열의 데이터베이스 이름은 다음과 같습니다. 무시했습니다. 사용-L이름을 지정하는 옵션 글로벌 객체를 버리고 무엇을 발견하는 데 사용되는 데이터베이스의 다른 데이터베이스는 덤프해야합니다.
데이터베이스의 호스트 이름을 지정합니다. 서버가 실행 중입니다. 값이 슬래시로 시작하면 UNIX 도메인 소켓의 디렉토리. 기본값이 가져옵니다 그만큼pghost환경 변수, 설정된 경우, 그렇지 않으면 UNIX 도메인 소켓 연결이 시도됩니다.
덤프에 연결할 데이터베이스 이름을 지정합니다. 객체와 다른 데이터베이스를 버려야 할 것을 발견하십시오. 그렇지 않다면 지정,Postgres토토 결과가 될 것입니다 사용되지 않으면 존재하지 않는 경우template1사용됩니다.
TCP 포트 또는 로컬 UNIX 도메인 소켓 파일 지정 서버가 연결을 듣는 확장. 기본값pgport환경 변수, 설정된 경우 또는 컴파일 된 기본값
사용자 이름으로 연결합니다.
비밀번호 프롬프트를 발행하지 마십시오. 서버에 비밀번호가 필요한 경우 인증 및 비밀번호는 다른 방법으로 사용할 수 없습니다. A로.pgpass파일, 연결 시도 실패합니다. 이 옵션은 배치 작업 및 스크립트에 유용 할 수 있습니다. 비밀번호를 입력 할 사용자가없는 경우.
힘pg_dumpall프롬프트 토토 결과에 연결하기 전에 비밀번호.
이 옵션은 결코 필수적이지 않습니다.pg_dumpalla 서버가 암호 인증을 요구하는 경우 비밀번호. 하지만,pg_dumpall연결을 낭비합니다 서버가 암호를 원한다는 것을 알아보십시오. 어떤 경우에는 입력 할 가치가 있습니다-w추가를 피하려면 연결 시도.
각 토토 결과에 대해 비밀번호 프롬프트가 다시 발생합니다. 버려야합니다. 일반적으로 A를 설정하는 것이 좋습니다.~/.pgpass수동 비밀번호에 의존하는 것보다 파일 기입.
덤프를 만드는 데 사용할 역할 이름을 지정합니다. 이 옵션 원인pg_dumpalla를 발행하려면역할 설정 Rolename데이터 베이스. 인증 된 사용자 (에 의해 지정 될 때 유용합니다.-u) 필요한 특권이 부족pg_dumpall이지만 역할로 전환 할 수 있습니다 필요한 권리. 일부 설치에는 로깅에 대한 정책이 있습니다 슈퍼업자로서 직접적 으로이 옵션을 사용하면 덤프가 정책을 위반하지 않고 만들어집니다.
기본 연결 매개 변수
이 유틸리티, 대부분의 다른 유틸리티PostgreSQL유틸리티도 사용합니다 지원되는 환경 변수libpq(참조PostgreSQL : 문서 : 9.3 : 환경 사설 토토).
이후pg_dumpall전화pg_dump내부적으로 일부 진단 메시지는pg_dump.
일단 복원되면 실행하는 것이 현명합니다분석각 토토 결과에서 Optimizer가 유용합니다 통계. 당신은 또한 실행할 수 있습니다Vacuumdb -a -지모든 데이터베이스를 분석하려면
pg_dumpall필요한 모든 것이 필요합니다 복원 전에 테이블 스페이스 디렉토리가 존재합니다. 그렇지 않으면, 데이터베이스 생성은 비 디폴트의 데이터베이스에 실패합니다 위치.
모든 토토 결과를 덤프하려면 :
$ pg_dumpall db.out
이 파일에서 토토 결과를 다시로드하려면 다음을 사용할 수 있습니다.
$ psql -f db.out postgres
(이후 여기에 어떤 데이터베이스를 연결하는 것이 중요하지 않습니다. 에 의해 생성 된 스크립트 파일pg_dumpall적절한 것을 포함합니다 저장된 토토 결과를 작성하고 연결하는 명령.)
postgresql : 문서 : 9.3 : 윈 토토 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
pg_dump | up | PG_ISREADY |