이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.postgresql : 문서 : 17 : 스포츠 토토 사이트버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

사설 토토

이름

사설 토토 --  추출 aPostgreSQL데이터베이스를 스크립트 파일 또는 기타 아카이브 파일로

시놉시스

사설 토토 [연결 옵션...] [옵션...] [DB이름]

설명

사설 토토백업용 유틸리티입니다.PostgreSQL데이터베이스. 데이터베이스가 동시에 사용되는 경우에도 일관된 백업을 수행합니다.사설 토토데이터베이스에 액세스하는 다른 사용자(독자 또는 작성자)를 차단하지 않습니다.

덤프는 스크립트 또는 아카이브 파일 형식으로 출력될 수 있습니다. 스크립트 덤프는 데이터베이스를 저장 당시의 상태로 재구성하는 데 필요한 SQL 명령이 포함된 일반 텍스트 파일입니다. 이러한 스크립트에서 복원하려면 해당 스크립트를 공급하세요.psql. 스크립트 파일을 사용하면 다른 시스템이나 다른 아키텍처에서도 데이터베이스를 재구성할 수 있습니다. 다른 SQL 데이터베이스 제품에서도 일부 수정이 이루어졌습니다.

대체 아카이브 파일 형식은 다음과 함께 사용해야 합니다.PostgreSQL : 문서 : 9.4 : 범퍼카 토토데이터베이스를 재구축합니다. 그들은 허용한다pg_restore복원할 항목을 선택적으로 선택하거나 복원하기 전에 항목을 다시 정렬해야 합니다. 아카이브 파일 형식은 아키텍처 간에 이식 가능하도록 설계되었습니다.

아카이브 파일 형식 중 하나와 함께 사용하고 다음과 결합하는 경우pg_restore, 사설 토토유연한 보관 및 전송 메커니즘을 제공합니다.사설 토토전체 데이터베이스를 백업하는 데 사용할 수 있는 경우pg_restore아카이브를 검사하거나 복원할 데이터베이스 부분을 선택하는 데 사용할 수 있습니다. 가장 유연한 출력 파일 형식은 다음과 같습니다."맞춤형"형식 (-Fc) 및"디렉토리"형식 (-Fd). 보관된 모든 항목을 선택하고 재정렬할 수 있으며 병렬 복원을 지원하고 기본적으로 압축됩니다."디렉토리"형식은 병렬 덤프를 지원하는 유일한 형식입니다.

실행 중사설 토토, 특히 아래 나열된 제한 사항을 고려하여 모든 경고(표준 오류에 인쇄됨)에 대한 출력을 검사해야 합니다.

옵션

다음 명령줄 옵션은 출력의 내용과 형식을 제어합니다.

DB이름

덤프할 데이터베이스의 이름을 지정합니다. 지정하지 않으면 환경 변수PGDATABASE이 사용됩니다. 설정되지 않은 경우 연결에 지정된 사용자 이름이 사용됩니다.

-a
--데이터 전용

스키마(데이터 정의)가 아닌 데이터만 덤프합니다. 테이블 데이터, 대형 개체 및 시퀀스 값이 덤프됩니다.

이 옵션은 다음과 유사하지만 역사적 이유로 동일하지 않습니다.--섹션=데이터.

-b
--방울

덤프에 대형 개체를 포함합니다. 이는 다음 경우를 제외하고는 기본 동작입니다.--스키마, --테이블또는--스키마 전용지정되었습니다.-b14032_14273

-c
--깨끗함

데이터베이스 개체 생성 명령을 출력하기 전에 데이터베이스 개체를 정리(삭제)하는 명령을 출력합니다. (만약--if-존재또한 지정되어 있으며, 대상 데이터베이스에 객체가 없는 경우 복원은 무해한 오류 메시지를 생성할 수 있습니다.)

이 옵션은 일반 텍스트 형식에만 의미가 있습니다. 아카이브 형식의 경우 전화 시 옵션을 지정할 수 있습니다.pg_restore.

-C
--생성

데이터베이스 자체를 생성하고 생성된 데이터베이스에 다시 연결하는 명령으로 출력을 시작합니다. (이 형식의 스크립트를 사용하면 스크립트를 실행하기 전에 대상 설치의 어떤 데이터베이스에 연결하는지는 중요하지 않습니다.) If--깨끗함또한 지정되면 스크립트는 대상 데이터베이스에 다시 연결하기 전에 대상 데이터베이스를 삭제하고 다시 생성합니다.

이 옵션은 일반 텍스트 형식에만 의미가 있습니다. 아카이브 형식의 경우 전화 시 옵션을 지정할 수 있습니다.pg_restore.

-E인코딩
--인코딩=인코딩

지정된 문자 집합 인코딩으로 덤프를 생성합니다. 기본적으로 덤프는 데이터베이스 인코딩으로 생성됩니다. (동일한 결과를 얻는 또 다른 방법은 다음을 설정하는 것입니다.PGCLIENTENCODING환경 변수를 원하는 덤프 인코딩으로 설정합니다.)

-f파일
--파일=파일

지정된 파일로 출력을 보냅니다. 파일 기반 출력 형식의 경우 이 매개변수를 생략할 수 있으며, 이 경우 표준 출력이 사용됩니다. 그러나 디렉터리 출력 형식의 경우 파일 대신 대상 디렉터리를 지정하는 경우 제공되어야 합니다. 이 경우 디렉토리는에 의해 생성됩니다.사설 토토이전에 존재해서는 안 됩니다.

-F형식
--형식=형식

출력 형식을 선택합니다.형식다음 중 하나일 수 있습니다:

p
일반

일반 텍스트 출력SQL스크립트 파일(기본값).

c
커스텀

입력에 적합한 사용자 정의 형식 아카이브를 출력pg_restore. 디렉터리 출력 형식과 함께 복원 중에 보관된 항목을 수동으로 선택하고 순서를 변경할 수 있다는 점에서 가장 유연한 출력 형식입니다. 이 형식은 기본적으로 압축되어 있습니다.

d
디렉토리

입력에 적합한 디렉토리 형식 아카이브를 출력pg_restore. 이렇게 하면 덤프되는 각 테이블 및 blob에 대한 하나의 파일과 덤프된 개체를 기계가 읽을 수 있는 형식으로 설명하는 소위 목차 파일이 포함된 디렉터리가 생성됩니다.pg_restore읽을 수 있습니다. 디렉토리 형식 아카이브는 표준 Unix 도구를 사용하여 조작할 수 있습니다. 예를 들어, 압축되지 않은 아카이브의 파일은 다음을 사용하여 압축할 수 있습니다.gzip도구. 이 형식은 기본적으로 압축되어 있으며 병렬 덤프도 지원합니다.

t
타르

출력 a타르-입력에 적합한 형식 아카이브pg_restore. tar 형식은 디렉토리 형식과 호환됩니다. tar 형식 아카이브를 추출하면 유효한 디렉토리 형식 아카이브가 생성됩니다. 그러나 tar 형식은 압축을 지원하지 않습니다. 또한 tar 형식을 사용하는 경우 복원 중에 테이블 데이터 항목의 상대적 순서를 변경할 수 없습니다.

-i
--무시-버전

현재는 무시되는 더 이상 사용되지 않는 옵션입니다.

-jnjobs
--작업=njobs

덤핑을 통해 덤프를 병렬로 실행njobs테이블을 동시에. 이 옵션은 덤프 시간을 단축하지만 데이터베이스 서버의 로드도 증가시킵니다. 이 옵션은 여러 프로세스가 동시에 데이터를 쓸 수 있는 유일한 출력 형식이므로 디렉터리 출력 형식에만 사용할 수 있습니다.

사설 토토열릴 예정입니다njobs+ 데이터베이스에 대한 1개의 연결이므로 다음을 확인하세요.max_connections설정이 모든 연결을 수용할 만큼 충분히 높습니다.

병렬 덤프를 실행하는 동안 데이터베이스 개체에 대한 배타적 잠금을 요청하면 덤프가 실패할 수 있습니다. 그 이유는사설 토토마스터 프로세스는 작업자 프로세스가 나중에 덤프할 객체에 대한 공유 잠금을 요청하여 덤프가 실행되는 동안 누구도 해당 객체를 삭제하고 사라지게 하지 않도록 합니다. 그런 다음 다른 클라이언트가 테이블에 대한 배타적 잠금을 요청하면 해당 잠금은 부여되지 않지만 마스터 프로세스의 공유 잠금이 해제될 때까지 대기하게 됩니다. 결과적으로 테이블에 대한 다른 액세스도 허용되지 않으며 배타적 잠금 요청 후에 대기열에 추가됩니다. 여기에는 테이블을 덤프하려는 작업자 프로세스가 포함됩니다. 예방 조치가 없으면 이는 전형적인 교착 상태 상황이 됩니다. 이 충돌을 감지하려면,사설 토토작업자 프로세스가 다음을 사용하여 또 다른 공유 잠금을 요청합니다.NOWAIT옵션. 작업자 프로세스에 이 공유 잠금이 부여되지 않은 경우 다른 사람이 그 동안 배타적 잠금을 요청한 것이므로 덤프를 계속할 수 있는 방법이 없습니다.사설 토토덤핑을 중단할 수밖에 없습니다.

일관적인 백업을 위해 데이터베이스 서버는 동기화된 스냅샷을 지원해야 합니다. 이 기능은 다음에 도입된 기능입니다.PostgreSQL9.2. 이 기능을 사용하면 데이터베이스 클라이언트는 서로 다른 연결을 사용하더라도 동일한 데이터 세트를 볼 수 있습니다.사설 토토 -j여러 데이터베이스 연결을 사용합니다. 마스터 프로세스를 사용하여 한 번, 각 작업자 작업에 대해 다시 한 번 데이터베이스에 연결합니다. 동기화된 스냅샷 기능이 없으면 여러 작업자 작업이 각 연결에서 동일한 데이터를 볼 수 있다고 보장할 수 없으므로 백업이 일관되지 않을 수 있습니다.

9.2 이전 서버의 병렬 덤프를 실행하려면 마스터가 데이터베이스에 연결하는 시간부터 마지막 작업자 작업이 데이터베이스에 연결될 때까지 데이터베이스 내용이 변경되지 않는지 확인해야 합니다. 이를 수행하는 가장 쉬운 방법은 백업을 시작하기 전에 데이터베이스에 액세스하는 모든 데이터 수정 프로세스(DDL 및 DML)를 중지하는 것입니다. 또한 다음을 지정해야 합니다.--동기화되지 않은 스냅샷실행 시 매개변수사설 토토 -j9.2 이전 버전에 대해포스트그레SQL서버.

-n스키마
--스키마=스키마

일치하는 스키마만 덤프스키마; 이렇게 하면 스키마 자체와 포함된 모든 개체가 모두 선택됩니다. 이 옵션을 지정하지 않으면 대상 데이터베이스의 모든 비시스템 스키마가 덤프됩니다. 여러 스키마를 작성하여 여러 스키마를 선택할 수 있습니다-n스위치. 또한,스키마매개변수는 다음에서 사용하는 것과 동일한 규칙에 따라 패턴으로 해석됩니다.psql's\d명령(참조패턴)이므로 패턴에 와일드카드 문자를 작성하여 여러 스키마를 선택할 수도 있습니다. 와일드카드를 사용할 때 쉘이 와일드카드를 확장하지 못하도록 필요한 경우 패턴을 인용하도록 주의하십시오. 참조.

참고:언제-n지정되었습니다.사설 토토선택한 스키마가 의존할 수 있는 다른 데이터베이스 개체를 덤프하려고 시도하지 않습니다. 따라서 특정 스키마 덤프의 결과가 자체적으로 깨끗한 데이터베이스로 성공적으로 복원될 수 있다는 보장은 없습니다.

참고:BLOB과 같은 비스키마 개체는 다음 경우에 덤프되지 않습니다.-n지정되었습니다. 다음을 사용하여 Blob을 덤프에 다시 추가할 수 있습니다.--방울스위치.

-N스키마
--제외-스키마=스키마

다음과 일치하는 스키마를 덤프하지 마십시오.스키마패턴. 패턴은 와 동일한 규칙에 따라 해석됩니다.-n. -N여러 패턴과 일치하는 스키마를 제외하기 위해 두 번 이상 제공될 수 있습니다.

둘 다일 때-n그리고-N이 주어지면 동작은 적어도 하나와 일치하는 스키마만 덤프하는 것입니다.-n전환하지만 아니요-N스위치. 만일-N없이 나타남-n, 그러면 스키마 일치-N일반 덤프에서 제외됩니다.

-o
--oids

객체 식별자 덤프(OIDs)를 모든 테이블에 대한 데이터의 일부로 사용합니다. 애플리케이션이 다음을 참조하는 경우 이 옵션을 사용하세요.OID어떤 방식으로든(예: 외래 키 제약 조건에서) 열. 그렇지 않으면 이 옵션을 사용해서는 안 됩니다.

-O
--소유자 없음

객체의 소유권을 원본 데이터베이스와 일치하도록 설정하는 명령을 출력하지 마십시오. 기본적으로,사설 토토문제소유자 변경또는세션 승인 설정생성된 데이터베이스 객체의 소유권을 설정하는 명령문입니다. 슈퍼유저(또는 스크립트의 모든 개체를 소유한 동일한 사용자)가 스크립트를 시작하지 않는 한 스크립트가 실행될 때 이러한 문은 실패합니다. 모든 사용자가 복원할 수 있지만 해당 사용자에게 모든 개체에 대한 소유권을 부여하는 스크립트를 만들려면 다음을 지정하십시오.-O.

이 옵션은 일반 텍스트 형식에만 의미가 있습니다. 아카이브 형식의 경우 전화 시 옵션을 지정할 수 있습니다.pg_restore.

-R
--재연결 없음

이 옵션은 더 이상 사용되지 않지만 이전 버전과의 호환성을 위해 여전히 허용됩니다.

-s
--스키마 전용

데이터가 아닌 개체 정의(스키마)만 덤프합니다.

이 옵션은 반대입니다--데이터 전용. 다음과 유사하지만 역사적 이유로 동일하지는 않습니다.--section=사전 데이터 --section=사후 데이터.

(이것을 다음과 혼동하지 마십시오.--스키마단어를 사용하는 옵션"스키마"다른 의미로.)

데이터베이스의 테이블 하위 집합에 대해서만 테이블 데이터를 제외하려면 다음을 참조하세요.--제외 테이블 데이터.

-S사용자 이름
--수퍼유저=사용자 이름

트리거를 비활성화할 때 사용할 수퍼유저 사용자 이름을 지정하십시오. 이는 다음과 같은 경우에만 관련됩니다.--비활성화-트리거이 사용됩니다. (일반적으로 이를 생략하고 대신 슈퍼유저로 결과 스크립트를 시작하는 것이 좋습니다.)

-t테이블
--테이블=테이블

일치하는 테이블(또는 뷰, 시퀀스 또는 외부 테이블)만 덤프테이블. 여러 테이블을 작성하여 여러 테이블을 선택할 수 있습니다-t스위치. 또한,테이블매개변수는 다음에서 사용하는 것과 동일한 규칙에 따라 패턴으로 해석됩니다.psql's\d명령(참조패턴)이므로 패턴에 와일드카드 문자를 작성하여 여러 테이블을 선택할 수도 있습니다. 와일드카드를 사용할 때 쉘이 와일드카드를 확장하지 못하도록 필요한 경우 패턴을 인용하도록 주의하십시오. 참조.

-n그리고-N스위치는 다음과 같은 경우에는 효과가 없습니다.-t다음에 의해 테이블이 선택되었기 때문에 사용됩니다.-t해당 스위치에 관계없이 덤프되며 테이블이 아닌 개체는 덤프되지 않습니다.

참고:언제-t지정되었습니다.사설 토토선택한 테이블이 의존할 수 있는 다른 데이터베이스 개체를 덤프하려고 시도하지 않습니다. 따라서 특정 테이블 덤프의 결과가 스스로 깨끗한 데이터베이스로 성공적으로 복원될 수 있다는 보장은 없습니다.

참고:의 행동-t스위치는 8.2 이전 버전과 완전히 상위 호환되지 않습니다.포스트그레SQL버전. 이전에 글을 쓰는 중-t 탭이름이 지정된 모든 테이블을 덤프합니다, 그러나 이제는 기본 검색 경로에 표시되는 항목을 덤프합니다. 이전 동작을 얻으려면 다음을 작성할 수 있습니다.-t '*.tab'. 또한 다음과 같이 작성해야 합니다.-t sch.tab이전 위치가 아닌 특정 스키마에서 테이블을 선택하려면-n sch -t 탭.

-티테이블
--제외 테이블=테이블

다음과 일치하는 테이블을 덤프하지 마십시오.테이블패턴. 패턴은 와 동일한 규칙에 따라 해석됩니다.-t. -T여러 패턴과 일치하는 테이블을 제외하기 위해 두 번 이상 제공될 수 있습니다.

둘 다일 때-t그리고-티이 주어지면 동작은 적어도 하나와 일치하는 테이블만 덤프하는 것입니다.-t전환하지만 아니요-T스위치. 만일-T없이 나타남-t, 일치하는 테이블-T일반 덤프에서 제외됩니다.

-v
--상세

상세 모드를 지정합니다. 이로 인해 발생합니다사설 토토자세한 개체 설명과 시작/중지 시간을 덤프 파일에 출력하고 진행 메시지를 표준 오류로 출력합니다.

-V
--버전

인쇄사설 토토버전 및 종료.

-x
--권한 없음
--no-acl

액세스 권한 덤프를 방지합니다(부여/취소 명령).

-Z0..9
--압축=0..9

사용할 압축 수준을 지정하십시오. 0은 압축이 없음을 의미합니다. 사용자 정의 아카이브 형식의 경우 이는 개별 테이블-데이터 세그먼트의 압축을 지정하며 기본값은 중간 수준으로 압축하는 것입니다. 일반 텍스트 출력의 경우 0이 아닌 압축 수준을 설정하면 전체 출력 파일이 마치 파일이 공급된 것처럼 압축됩니다.gzip; 그러나 기본값은 압축하지 않는 것입니다. tar 아카이브 형식은 현재 압축을 전혀 지원하지 않습니다.

--바이너리-업그레이드

이 옵션은 전체 업그레이드 유틸리티에서 사용하기 위한 것입니다. 다른 목적으로 사용하는 것은 권장되거나 지원되지 않습니다. 옵션의 동작은 향후 릴리스에서 예고 없이 변경될 수 있습니다.

--열 삽입
--속성-삽입

다음으로 데이터 덤프삽입명시적인 열 이름이 있는 명령(INSERT INTO테이블 (, ...) 값 ...). 이렇게 하면 복원 속도가 매우 느려집니다. 주로 비에 로드할 수 있는 덤프를 만드는 데 유용합니다.포스트그레SQL데이터베이스. 그러나 이 옵션은 각 행에 대해 별도의 명령을 생성하므로 행을 다시 로드할 때 오류가 발생하면 전체 테이블 내용이 손실되지 않고 해당 행만 손실됩니다.

--disable-dollar-quoting

이 옵션은 함수 본문에 달러 인용 사용을 비활성화하고 SQL 표준 문자열 구문을 사용하여 인용하도록 강제합니다.

--비활성화-트리거

이 옵션은 데이터 전용 덤프를 생성할 때만 관련됩니다. 지시한다사설 토토데이터가 다시 로드되는 동안 대상 테이블에서 트리거를 일시적으로 비활성화하는 명령을 포함합니다. 데이터를 다시 로드하는 동안 호출하지 않으려는 테이블에 대한 참조 무결성 검사 또는 기타 트리거가 있는 경우 이를 사용하십시오.

현재 다음에 대해 내보낸 명령은--비활성화-트리거수퍼유저로 수행해야 합니다. 따라서 다음을 사용하여 수퍼유저 이름도 지정해야 합니다.-S, 또는 슈퍼유저로 결과 스크립트를 시작하는 데 주의하는 것이 좋습니다.

이 옵션은 일반 텍스트 형식에만 의미가 있습니다. 아카이브 형식의 경우 전화 시 옵션을 지정할 수 있습니다.pg_restore.

--제외-테이블-데이터=테이블

다음과 일치하는 테이블에 대한 데이터를 덤프하지 마십시오.테이블패턴. 패턴은 와 동일한 규칙에 따라 해석됩니다.-t. --제외 테이블 데이터여러 패턴과 일치하는 테이블을 제외하기 위해 두 번 이상 제공될 수 있습니다. 이 옵션은 특정 테이블에 데이터가 필요하지 않더라도 특정 테이블의 정의가 필요할 때 유용합니다.

데이터베이스의 모든 테이블에 대한 데이터를 제외하려면 다음을 참조하세요.--스키마 전용.

--존재하는 경우

조건부 명령 사용(예: 추가존재하는 경우절) 데이터베이스 개체를 정리할 때. 이 옵션은 다음 경우가 아니면 유효하지 않습니다.--깨끗함또한 지정되었습니다.

--삽입

다음으로 데이터 덤프삽입명령(보다는복사). 이렇게 하면 복원 속도가 매우 느려집니다. 주로 비에 로드할 수 있는 덤프를 만드는 데 유용합니다.PostgreSQL데이터베이스. 그러나 이 옵션은 각 행에 대해 별도의 명령을 생성하므로 행을 다시 로드할 때 오류가 발생하면 전체 테이블 내용이 손실되지 않고 해당 행만 손실됩니다. 열 순서를 다시 정렬한 경우 복원이 완전히 실패할 수 있습니다.--열 삽입옵션은 열 순서 변경에 대해 안전하지만 속도는 더 느립니다.

--잠금-대기-시간 초과=시간 초과

덤프 시작 시 공유 테이블 잠금을 획득하기 위해 영원히 기다리지 마십시오. 대신 지정된 기간 내에서 테이블을 잠글 수 없으면 실패합니다.시간 초과. 시간 초과는 다음에서 허용되는 형식으로 지정할 수 있습니다.SET 문_시간 초과. (허용되는 값은 덤프하는 서버 버전에 따라 다르지만 7.3 이후의 모든 버전에서는 밀리초 단위의 정수가 허용됩니다. 7.3 이전 서버에서 덤프할 때는 이 옵션이 무시됩니다.)

--보안 라벨 없음

보안 라벨을 덤프하지 마십시오.

--동기화되지 않은 스냅샷

이 옵션은 실행을 허용합니다사설 토토 -j9.2 이전 서버에 대해서는 다음 문서를 참조하세요.-j자세한 내용은 매개변수를 참조하세요.

--테이블스페이스 없음

테이블스페이스를 선택하는 명령을 출력하지 마십시오. 이 옵션을 사용하면 복원 중에 기본값인 테이블스페이스에 모든 객체가 생성됩니다.

이 옵션은 일반 텍스트 형식에만 의미가 있습니다. 아카이브 형식의 경우 전화 시 옵션을 지정할 수 있습니다.pg_restore.

--no-unlogged-table-data

기록되지 않은 테이블의 내용을 덤프하지 마십시오. 이 옵션은 테이블 정의(스키마)가 덤프되는지 여부에 영향을 미치지 않습니다. 테이블 데이터 덤프만 억제합니다. 로그되지 않은 테이블의 데이터는 대기 서버에서 덤프할 때 항상 제외됩니다.

--인용-모든 식별자

모든 식별자를 강제로 인용합니다. 이 옵션은 다음과 같은 서버에서 데이터베이스를 덤프할 때 권장됩니다.PostgreSQL주 버전이 다음과 다릅니다.사설 토토' 또는 출력이 다른 주요 버전의 서버에 로드되도록 의도된 경우. 기본적으로,사설 토토주 버전의 예약어인 식별자만 인용합니다. 이로 인해 약간 다른 예약어 세트가 있을 수 있는 다른 버전의 서버를 처리할 때 호환성 문제가 발생하는 경우가 있습니다. 사용--인용-모든 식별자읽기 어려운 덤프 스크립트를 사용하여 이러한 문제를 방지합니다.

--섹션=섹션 이름

이름이 지정된 섹션만 덤프하십시오. 섹션 이름은 다음과 같습니다.사전 데이터, 데이터, 또는포스트 데이터. 이 옵션을 두 번 이상 지정하여 여러 섹션을 선택할 수 있습니다. 기본값은 모든 섹션을 덤프하는 것입니다.

데이터 섹션에는 실제 테이블 데이터, 대형 개체 내용 및 시퀀스 값이 포함되어 있습니다. 사후 데이터 항목에는 유효성 검사 제약 조건 이외의 인덱스, 트리거, 규칙 및 제약 조건에 대한 정의가 포함됩니다. 사전 데이터 항목에는 다른 모든 데이터 정의 항목이 포함됩니다.

--직렬화 가능-지연 가능

사용직렬화 가능사용된 스냅샷이 이후 데이터베이스 상태와 일치하는지 확인하기 위한 덤프 트랜잭션. 그러나 덤프가 실패하거나 다른 트랜잭션이 다음과 같이 롤백될 위험이 없도록 트랜잭션 스트림에서 이상이 없는 지점을 기다려 이를 수행합니다.직렬화_실패. 참조사설 토토 사이트 : 문서 : 9.4 : 사설 토토 사이트 제어트랜잭션 격리 및 동시성 제어에 대한 자세한 내용을 확인하세요.

이 옵션은 재해 복구만을 목적으로 하는 덤프에는 유용하지 않습니다. 원본 데이터베이스가 계속 업데이트되는 동안 보고 또는 기타 읽기 전용 로드 공유를 위해 데이터베이스 복사본을 로드하는 데 사용되는 덤프에 유용할 수 있습니다. 이것이 없으면 덤프는 결국 커밋된 트랜잭션의 직렬 실행과 일치하지 않는 상태를 반영할 수 있습니다. 예를 들어 일괄 처리 기술을 사용하는 경우 일괄 처리에 포함된 모든 항목이 표시되지 않은 채 일괄 처리가 덤프에서 닫힌 것으로 표시될 수 있습니다.

사설 토토가 시작될 때 활성화된 읽기-쓰기 트랜잭션이 없으면 이 옵션은 아무런 차이가 없습니다. 읽기-쓰기 트랜잭션이 활성화된 경우 덤프 시작이 무한정 지연될 수 있습니다. 일단 실행되면 스위치 유무에 관계없이 성능은 동일합니다.

--use-set-session-authorization

출력 SQL-표준세션 승인 설정대신 명령소유자 변경개체 소유권을 결정하는 명령입니다. 이렇게 하면 덤프가 더욱 표준과 호환되지만 덤프에 있는 개체 기록에 따라 제대로 복원되지 않을 수 있습니다. 또한, 다음을 사용하여 덤프합니다.세션 승인 설정올바로 복원하려면 확실히 수퍼유저 권한이 필요하지만소유자 변경더 낮은 권한이 필요합니다.

-?
--도움말

다음에 대한 도움말 표시사설 토토명령줄 인수 및 종료.

다음 명령줄 옵션은 데이터베이스 연결 매개변수를 제어합니다.

-dDB이름
--dbname=DB이름

연결할 데이터베이스의 이름을 지정합니다. 이는 다음을 지정하는 것과 동일합니다.db이름명령줄에서 옵션이 아닌 첫 번째 인수로.

이 매개변수에 다음이 포함된 경우=유효한 서명 또는 시작URI접두사(postgresql://또는postgres://), 이는콘인포문자열. 참조섹션 31.1더 많은 정보를 원하시면.

-h호스트
--호스트=호스트

서버가 실행 중인 시스템의 호스트 이름을 지정합니다. 값이 슬래시로 시작하는 경우 Unix 도메인 소켓의 디렉터리로 사용됩니다. 기본값은에서 가져옵니다.PGHOST환경 변수, 설정된 경우 그렇지 않으면 Unix 도메인 소켓 연결이 시도됩니다.

-p포트
--포트=포트

서버가 연결을 수신하고 있는 TCP 포트 또는 로컬 Unix 도메인 소켓 파일 확장자를 지정합니다. 기본값은PG포트환경 변수(설정된 경우) 또는 컴파일된 기본값.

-U사용자 이름
--사용자 이름=사용자 이름

연결할 사용자 이름.

-w
--비밀번호 없음

비밀번호 프롬프트를 발행하지 마십시오. 서버가 비밀번호 인증을 요구하는데 다음과 같은 다른 방법으로 비밀번호를 사용할 수 없는 경우.pgpass파일을 사용하면 연결 시도가 실패합니다. 이 옵션은 비밀번호를 입력할 사용자가 없는 일괄 작업 및 스크립트에 유용할 수 있습니다.

-W
--비밀번호

포스사설 토토데이터베이스에 연결하기 전에 비밀번호를 묻는 메시지를 표시합니다.

이 옵션은 결코 필수가 아닙니다. 왜냐하면사설 토토서버가 비밀번호 인증을 요구하면 자동으로 비밀번호를 묻는 메시지를 표시합니다. 그러나사설 토토서버가 비밀번호를 원하는지 알아내는 연결 시도를 낭비하게 됩니다. 어떤 경우에는 입력할 가치가 있습니다.-W추가 연결 시도를 피하기 위해.

--역할=역할 이름

덤프를 생성하는 데 사용할 역할 이름을 지정합니다. 이 옵션으로 인해사설 토토a를 발행하다역할 설정 역할 이름43401_43501-U)에 필요한 권한이 부족합니다.사설 토토, 그러나 필요한 권한이 있는 역할로 전환할 수 있습니다. 일부 설치에는 수퍼유저로 직접 로그인하는 것에 대한 정책이 있으며, 이 옵션을 사용하면 정책을 위반하지 않고 덤프를 만들 수 있습니다.

환경

PGDATABASE
PGHOST
PGOPTIONS
PGPORT
PGUSER

기본 연결 매개변수.

이 유틸리티는 대부분의 다른 유틸리티와 같습니다.PostgreSQL유틸리티는 다음에서 지원하는 환경 변수도 사용합니다.libpq(참조PostgreSQL : 문서 : 9.4 : 환경 범퍼카 토토).

진단

사설 토토내부적으로 실행선택문장. 실행에 문제가 있는 경우사설 토토, 예를 들어 다음을 사용하여 데이터베이스에서 정보를 선택할 수 있는지 확인하세요.psql. 또한, 기본 연결 설정 및 환경 변수는libpq프런트엔드 라이브러리가 적용됩니다.

다음의 데이터베이스 활동사설 토토일반적으로 통계 수집기에 의해 수집됩니다. 이것이 바람직하지 않은 경우 매개변수를 설정할 수 있습니다.track_counts거짓으로PGOPTIONS또는사용자 변경명령.

참고

데이터베이스 클러스터에 로컬 추가사항이 있는 경우템플릿1데이터베이스, 출력을 복원할 때 주의하세요사설 토토완전히 비어있는 데이터베이스로; 그렇지 않으면 추가된 객체의 정의가 중복되어 오류가 발생할 가능성이 높습니다. 로컬 추가 없이 빈 데이터베이스를 만들려면 다음에서 복사하세요.템플릿0아님템플릿1, 예:

템플릿 template0으로 foo 데이터베이스 생성;

데이터 전용 덤프를 선택하고 옵션을 선택한 경우--비활성화-트리거사용됩니다.사설 토토데이터를 삽입하기 전에 사용자 테이블에서 트리거를 비활성화하는 명령을 내보낸 다음, 데이터가 삽입된 후에 트리거를 다시 활성화하는 명령을 내보냅니다. 복원이 중간에 중지되면 시스템 카탈로그가 잘못된 상태로 남을 수 있습니다.

다음에 의해 생성된 덤프 파일사설 토토쿼리 계획 결정을 내리기 위해 최적화 프로그램이 사용하는 통계가 포함되어 있지 않습니다. 그러므로 달리는 것이 현명하다.분석최적의 성능을 보장하기 위해 덤프 파일에서 복원한 후; 참조섹션 23.1.3그리고섹션 23.1.646774_46839데이터베이스 변경...설정명령; 이 설정은 다음에 의해 덤프됩니다.사설 토토all, 데이터베이스 사용자 및 기타 설치 전체 설정과 함께.

왜냐하면사설 토토다음 버전의 데이터를 전송하는 데 사용됩니다.PostgreSQL, 출력사설 토토다음에 로드될 것으로 예상됩니다.PostgreSQL다음보다 최신 서버 버전사설 토토의 버전입니다.사설 토토다음에서 덤프할 수도 있음포스트그레SQL서버가 자체 버전보다 오래되었습니다. (현재는 7.0 버전 이하의 서버도 지원됩니다.) 단,사설 토토다음에서 덤프할 수 없습니다.PostgreSQL서버가 자체 주요 버전보다 최신 버전입니다. 유효하지 않은 덤프를 만드는 위험을 감수하기보다는 시도조차 거부합니다. 또한, 다음을 보장하지 않습니다.사설 토토의 출력은 이전 주요 버전의 서버에 로드될 수 있습니다. 해당 버전의 서버에서 덤프를 가져온 경우에도 마찬가지입니다. 이전 서버에 덤프 파일을 로드하려면 이전 서버에서 이해하지 못하는 구문을 제거하기 위해 덤프 파일을 수동으로 편집해야 할 수도 있습니다. 의 사용--인용-모든 식별자옵션은 버전 간 경우에 권장됩니다. 다양한 예약어 목록으로 인해 발생하는 문제를 방지할 수 있기 때문입니다.포스트그레SQL버전.

다음 데이터베이스를 덤프하려면mydbSQL 스크립트 파일로:

$ 사설 토토 mydb  db.sql

이러한 스크립트를 (새로 생성된) 데이터베이스에 다시 로드하려면newdb:

$ psql -d newdb -f db.sql

데이터베이스를 사용자 정의 형식 아카이브 파일로 덤프하려면:

$ 사설 토토 -Fc mydb  db.dump

데이터베이스를 디렉토리 형식 아카이브로 덤프하려면:

$ 사설 토토 -Fd mydb -f dumpdir

5개의 작업자 작업과 동시에 데이터베이스를 디렉토리 형식 아카이브로 덤프하려면:

$ 사설 토토 -Fd mydb -j 5 -f dumpdir

아카이브 파일을 (새로 생성된) 데이터베이스로 다시 로드하려면newdb:

$ pg_restore -d newdb db.dump

이름이 지정된 단일 테이블을 덤프하려면마이탭:

$ 사설 토토 -t mytab mydb  db.sql

이름이 다음으로 시작하는 모든 테이블을 덤프하려면emp에서디트로이트스키마, 이름이 지정된 테이블 제외직원_로그:

$ 사설 토토 -t 'detroit.emp*' -T detroit.employee_log mydb  db.sql

이름이 다음으로 시작하는 모든 스키마를 덤프하려면동쪽또는서쪽다음으로 끝남gsm, 이름에 해당 단어가 포함된 스키마 제외)테스트:

$ 사설 토토 -n 'east*gsm' -n 'west*gsm' -N '*test*' mydb  db.sql

동일합니다. 정규식 표기법을 사용하여 스위치를 통합합니다.

$ 사설 토토 -n '(east|west)*gsm' -N '*test*' mydb  db.sql

이름이 다음으로 시작하는 테이블을 제외한 모든 데이터베이스 개체를 덤프하려면ts_:

$ 사설 토토 -T 'ts_*' mydb  db.sql

대문자 또는 대소문자 혼합 이름을 지정하려면-t및 관련 스위치의 경우 이름을 큰따옴표로 묶어야 합니다. 그렇지 않으면 소문자로 접혀집니다(참조패턴). 그러나 큰따옴표는 쉘에 특수하므로 차례로 인용해야 합니다. 따라서 대소문자가 혼합된 이름으로 단일 테이블을 덤프하려면 다음과 같은 것이 필요합니다.

$ 사설 토토 -t "\"MixedCaseName\"" mydb  mytab.sql