pg_dumpall다음을 위한 유틸리티입니다. (를 쓰다"덤핑") 모두포스트그레SQL데이터베이스 하나의 스크립트 파일로 클러스터링합니다. 스크립트 파일에는 다음이 포함됩니다.SQL사용할 수 있는 명령 입력으로psql토토 베이를 복원합니다. 그렇습니다 전화해서 하세요PostgreSQL : 문서 : 9.1 : 메이저 토토 사이트각각 클러스터의 토토 베이입니다.pg_dumpall또한 다음과 같은 전역 개체를 덤프합니다. 모든 데이터베이스에 공통입니다. (pg_dump이 개체를 저장하지 않습니다.) 이 현재 데이터베이스 사용자 및 그룹에 대한 정보가 포함되어 있습니다. 테이블스페이스 및 적용되는 액세스 권한과 같은 속성 데이터베이스 전체에 적용됩니다.
이후pg_dumpall테이블을 읽습니다. 모든 데이터베이스에서 다음과 같이 연결해야 할 가능성이 높습니다. 완전한 덤프를 생성하려면 데이터베이스 수퍼유저가 필요합니다. 또한 당신 저장된 스크립트를 실행하려면 슈퍼유저 권한이 필요합니다. 사용자 및 그룹을 추가하고 생성할 수 있도록 허용합니다. 토토 베이.
SQL 스크립트가 표준 출력에 기록됩니다. 사용 [-f|file] 옵션이나 셸 연산자를 사용하여 파일을 파일.
pg_dumpall연결 필요 여러 번PostgreSQL서버(토토 베이당 한 번). 비밀번호 인증을 사용하는 경우 매번 비밀번호를 묻습니다. 가 있으면 편리합니다.~/.pgpass12652_12681젠 토토 : 문서 : 9.1 : 암호 파일더 보기 정보.
다음 명령줄 옵션은 콘텐츠와 출력 형식입니다.
스키마가 아닌 데이터만 덤프합니다(데이터 정의).
이전에 데이터베이스를 정리(삭제)하는 SQL 명령을 포함합니다. 다시 만들어 보세요.드롭명령 역할과 테이블스페이스도 추가됩니다.
지정된 파일로 출력을 보냅니다. 이것을 생략하면, 표준 출력이 사용됩니다.
전역 개체(역할 및 테이블스페이스)만 덤프, 아니요 토토 베이.
현재는 무시되는 더 이상 사용되지 않는 옵션입니다.
객체 식별자 덤프(OIDs)를 모든 데이터의 일부로 테이블. 애플리케이션이 다음을 참조하는 경우 이 옵션을 사용하세요.OID어떤 방식으로든 열 (예: 외래 키 제약 조건에서) 그렇지 않으면 이 옵션 사용하면 안 됩니다.
객체의 소유권을 설정하는 명령을 출력하지 마십시오. 원본 토토 베이와 일치합니다. 기본적으로,pg_dumpall문제소유자 변경또는SET 세션 승인소유권을 설정하는 명령문 스키마 요소를 생성했습니다. 이 문은 다음과 같은 경우 실패합니다. 슈퍼유저(또는 스크립트의 모든 개체를 소유한 동일한 사용자). 모든 사용자가 복원할 수 있지만 복원할 수 있는 스크립트를 만들려면 해당 사용자에게 모든 객체의 소유권을 부여하고 지정하십시오.-O.
역할만 덤프하고 토토 베이나 테이블스페이스는 덤프하지 않습니다.
데이터가 아닌 개체 정의(스키마)만 덤프합니다.
비활성화할 때 사용할 수퍼유저 사용자 이름을 지정하십시오. 트리거. 이는 다음과 같은 경우에만 관련됩니다.--비활성화-트리거사용됩니다. (보통 그렇죠. 이것을 생략하고 대신 결과를 시작하는 것이 좋습니다 슈퍼유저로 스크립트를 작성하세요.)
테이블스페이스만 덤프하고 토토 베이나 역할은 덤프하지 않습니다.
상세 모드를 지정합니다. 이로 인해 발생합니다pg_dumpall시작/중지 시간 출력 덤프 파일로 이동하고 메시지를 표준 오류로 진행합니다. 또한 다음에서 자세한 출력을 활성화합니다.pg_dump.
인쇄pg_dumpall버전 및 종료.
접근권한 덤프 방지(부여/취소) 명령).
이 옵션은 전체 업그레이드 유틸리티에서 사용하기 위한 것입니다. 다른 목적으로 사용하는 것은 권장되거나 지원되지 않습니다. 옵션의 동작은 향후 릴리스에서 변경될 수 있습니다. 예고 없이.
다음으로 데이터 덤프삽입명령 명시적인 열 이름(INSERT INTO테이블 (열, ...) 값 ...). 이 복구 속도가 매우 느려집니다. 주로 유용합니다. 비에 로드할 수 있는 덤프 만들기포스트그레SQL토토 베이.
이 옵션은 달러 인용 사용을 비활성화합니다. 함수 본문을 SQL을 사용하여 인용하도록 강제합니다. 표준 문자열 구문.
이 옵션은 데이터 전용 생성 시에만 관련됩니다. 덤프. 지시한다pg_dumpall명령을 포함하려면 일시적으로 대상 테이블에서 트리거를 비활성화하는 동안 데이터가 다시 로드됩니다. 참고자료가 있는 경우 이것을 사용하세요 무결성 검사 또는 테이블에 대한 기타 트리거 데이터를 다시 로드하는 동안 호출하고 싶지 않습니다.
현재 다음에 대해 내보낸 명령은--비활성화-트리거수퍼유저로 수행해야 합니다. 따라서 다음을 사용하여 수퍼유저 이름도 지정해야 합니다.-S또는 다음 사항에 주의하는 것이 좋습니다. 슈퍼유저로 결과 스크립트를 시작합니다.
다음으로 데이터 덤프삽입명령 (대신에)복사). 이것은 만들 것이다 복구가 매우 느림; 주로 덤프를 만드는 데 유용합니다. 비에 로드할 수 있는PostgreSQL토토 베이. 참고 열을 다시 정렬한 경우 복원이 완전히 실패할 수 있습니다. 주문.--열 삽입옵션 더 느리긴 하지만 더 안전합니다.
공유 테이블 잠금을 획득하기 위해 영원히 기다리지 마십시오. 덤프의 시작. 대신에 잠글 수 없으면 실패합니다. 지정된 테이블 내의 테이블시간 초과. 시간 초과를 지정할 수 있습니다. 에서 허용하는 모든 형식으로세트 문_시간 초과. 허용되는 값은 다음에 따라 다릅니다. 덤프하려는 서버 버전이지만 정수입니다. 밀리초 수는 이후 모든 버전에서 허용됩니다. 7.3. 이 옵션은 7.3 이전 버전에서 덤프할 때 무시됩니다. 서버.
보안 라벨을 덤프하지 마십시오.
테이블스페이스를 생성하거나 선택하는 명령을 출력하지 마십시오. 객체용 테이블스페이스. 이 옵션을 사용하면 모든 개체가 동안 기본값인 테이블스페이스에 생성됩니다. 복원합니다.
기록되지 않은 테이블의 내용을 덤프하지 마십시오. 이 옵션 테이블 정의 여부에 영향을 미치지 않습니다. (스키마)이 덤프됩니다. 테이블 덤핑만 억제합니다. 데이터.
모든 식별자를 강제로 인용합니다. 이 옵션은 다음과 같은 서버에서 데이터베이스를 덤프할 때 권장됩니다.포스트그레SQL주 버전 와는 다르다pg_dumpall's 또는 출력이 다음과 같은 경우 다른 주요 서버에 로드되도록 의도됨 버전. 기본적으로,pg_dumpall식별자만 인용합니다. 이는 자체 주요 버전의 예약어입니다. 이 처리할 때 때때로 호환성 문제가 발생합니다. 다른 버전의 서버는 약간 다를 수 있습니다. 예약어 세트. 사용--인용-모든 식별자이러한 문제를 방지합니다. 읽기 어려운 덤프 스크립트의 대가로.
출력 SQL-표준세션 설정 승인대신 명령소유자 변경객체를 결정하는 명령 소유권. 이로 인해 덤프가 더 많은 표준과 호환됩니다. 하지만 덤프에 있는 객체의 기록에 따라 제대로 복원되지 않을 수 있습니다.
다음에 관한 도움말 보기pg_dumpall명령줄 인수 및 종료.
다음 명령줄 옵션은 데이터베이스를 제어합니다 연결 매개변수입니다.
다음이 실행되는 시스템의 호스트 이름을 지정합니다. 데이터베이스 서버가 실행 중입니다. 값이 다음으로 시작하는 경우 슬래시는 Unix 도메인의 디렉터리로 사용됩니다. 소켓. 기본값은에서 가져옵니다.PGHOST환경 변수(설정된 경우), 그렇지 않은 경우 Unix 도메인 소켓 연결이 시도되었습니다.
덤프에 연결할 데이터베이스의 이름을 지정합니다 전역 객체를 찾고 다른 데이터베이스가 무엇인지 알아보세요. 버려졌다. 지정하지 않으면,포스트그레토토 베이가 사용될 것이며, 만약 그렇다면 존재하지 않습니다.템플릿1될 것이다 사용되었습니다.
TCP 포트 또는 로컬 Unix 도메인 소켓 파일을 지정합니다. 서버가 연결을 수신하는 확장명입니다. 기본값은PGPORT환경 변수(설정된 경우) 또는 컴파일된 기본값입니다.
연결할 사용자 이름.
절대 비밀번호 프롬프트를 표시하지 마세요. 서버에서 요구하는 경우 비밀번호 인증은 비밀번호를 사용할 수 없습니다. a와 같은 다른 수단.pgpass파일을 사용하면 연결 시도가 실패합니다. 이 옵션은 다음과 같습니다. 사용자가 없는 일괄 작업 및 스크립트에 유용합니다. 비밀번호를 입력하세요.
포스pg_dumpall에 토토 베이에 연결하기 전에 비밀번호를 묻는 메시지를 표시합니다.
이 옵션은 결코 필수가 아닙니다. 왜냐하면pg_dumpall자동으로 메시지가 표시됩니다. 서버가 비밀번호를 요구하는 경우 비밀번호 인증. 그러나pg_dumpall연결을 낭비하게 됩니다 서버가 비밀번호를 원하는지 알아내려고 시도합니다. 에서 어떤 경우에는 입력할 가치가 있습니다.-W에 추가 연결 시도를 피하십시오.
암호 프롬프트는 각각에 대해 다시 발생합니다. 덤프할 토토 베이. 일반적으로 다음을 설정하는 것이 좋습니다.~/.pgpass파일에 의존하는 것보다 수동 비밀번호 입력.
덤프를 생성하는 데 사용할 역할 이름을 지정합니다. 이 옵션으로 인해pg_dumpall발행하려면역할 설정 역할명연결 후 명령 토토 베이. 인증된 사용자일 때 유용합니다. (다음으로 지정됨-U)에 권한이 없습니다. 필요함pg_dumpall하지만 필요한 권한이 있는 역할로 전환할 수 있습니다. 일부 설치에는 다음으로 직접 로그인하는 것에 대한 정책이 있습니다. 수퍼유저이며 이 옵션을 사용하면 덤프를 만들 수 있습니다. 정책을 위반하지 않고.
기본 연결 매개변수
이 유틸리티는 대부분의 다른 유틸리티와 같습니다.PostgreSQL유틸리티도 다음을 사용합니다. 에서 지원하는 환경 변수libpq(참조섹션 31.13).
이후pg_dumpall호출pg_dump내부적으로 일부 진단 메시지는 다음을 참조합니다.pg_dump.
복구되면 실행하는 것이 현명합니다.분석각 토토 베이에서 최적화 프로그램은 유용한 통계. 실행할 수도 있습니다.vacuumdb -a -z모든 데이터베이스를 분석합니다.
pg_dumpall모두 필요 복원 전에 존재하는 테이블스페이스 디렉토리가 필요합니다. 그렇지 않으면 다음 위치의 데이터베이스에 대한 데이터베이스 생성이 실패합니다. 기본 위치가 아닙니다.