Postgresql 9.0.23 문서화 | ||||
---|---|---|---|---|
PostgreSQL : 문서 : 9.0 : 스포츠 토토 사이트 | up | 토토 결과 PostgreSQL : 문서 : 9.0 : PG_DUMPALL |
토토 베이유틸리티입니다 백업PostgreSQL데이터베이스. 데이터베이스가 있더라도 일관된 백업을 만듭니다 동시에 사용되는 것.토토 베이다른 사용자가 데이터베이스에 액세스하는 것을 차단하지 않습니다 (독자 또는 작가).
덤프는 스크립트 또는 아카이브 파일 형식으로 출력 할 수 있습니다. 스크립트 덤프는 필요한 SQL 명령이 포함 된 일반 텍스트 파일입니다 데이터베이스를 상태로 재구성하려면 당시에있었습니다. 저장되었습니다. 그러한 대본에서 복원하려면에 공급하십시오.PSQL. 스크립트 파일을 사용하여 다른 사람에서도 데이터베이스를 재구성 할 수 있습니다. 기계 및 기타 아키텍처; 약간의 수정이 있습니다 다른 SQL 데이터베이스 제품에서.
대체 아카이브 파일 형식은와 함께 사용해야합니다.PostgreSQL : 문서 : 9.0 : 토토 꽁 머니데이터 베이스. 그들은 허용PG_RESTORE복원 된 것에 대해 선택적이거나 심지어 복원하기 전에 항목. 아카이브 파일 형식은 다음과 같습니다 아키텍처 전체에서 휴대용으로 설계되었습니다.
아카이브 파일 형식 중 하나 및 결합 된 경우 와 함께PG_RESTORE, 토토 베이융통성있는 아카이브를 제공합니다 전송 메커니즘.토토 베이can 전체 데이터베이스를 백업하는 데 사용됩니다.PG_RESTORE를 검사하는 데 사용할 수 있습니다 아카이브 및/또는 데이터베이스의 어떤 부분이 있는지 선택하십시오. 복원. 가장 유연한 출력 파일 형식은입니다."Custom"형식 (-fc). 그것은 모두를 선택하고 재주문 할 수 있습니다 아카이브 된 품목은 기본적으로 압축됩니다. 그만큼타르형식 (-ft) IS 압축되지 않으며 언제 데이터를 재정렬하는 데 제한이 있습니다 로딩이지만 그렇지 않으면 매우 유연합니다. 또한, 그럴 수 있습니다 와 같은 표준 유닉스 도구로 조작타르.
실행 중토토 베이, 하나 경고에 대한 출력을 검사해야합니다 (표준으로 인쇄 오류), 특히 아래에 나열된 제한 사항에 비추어.
다음 명령 줄 옵션은 컨텐츠를 제어합니다 출력 형식.
덤프 할 데이터베이스의 이름을 지정합니다. 이 경우 지정되지 않음, 환경 변수pgdatabase사용됩니다. 그것이 설정되지 않은 경우, 연결에 지정된 사용자 이름이 사용됩니다.
스키마가 아닌 데이터 만 덤프하십시오 (데이터 정의).
이 옵션은 일반 텍스트에만 의미가 있습니다 체재. 아카이브 형식의 경우 옵션을 지정할 수 있습니다 전화 할 때PG_RESTORE.
덤프에 큰 물체를 포함시킵니다. 이것은 기본값입니다 을 제외한 행동--- 스키마, -타이블또는--- 스키마 전용지정되어 있으므로-B스위치는 큰 물체를 추가하는 데만 유용합니다 선택적 덤프에.
DROP (DROP) 데이터베이스 개체를 이전에 출력합니다 (명령)를 만들기 위해.
이 옵션은 일반 텍스트에만 의미가 있습니다 체재. 아카이브 형식의 경우 옵션을 지정할 수 있습니다 전화 할 때PG_RESTORE.
데이터베이스를 생성하기 위해 명령으로 출력을 시작합니다. 자체 및 생성 된 데이터베이스에 다시 연결하십시오. (a 이 형식의 스크립트, 어떤 데이터베이스가 중요하지 않습니다. 스크립트를 실행하기 전에 연결하십시오.)
이 옵션은 일반 텍스트에만 의미가 있습니다 체재. 아카이브 형식의 경우 옵션을 지정할 수 있습니다 전화 할 때PG_RESTORE.
지정된 문자 세트 인코딩에서 덤프를 만듭니다. 기본적으로 덤프는 데이터베이스 인코딩에서 생성됩니다. (같은 결과를 얻는 또 다른 방법은를 설정하는 것입니다.pgclientencoding환경 원하는 덤프 인코딩에 변수.)
지정된 파일로 출력을 전송합니다. 이것이 생략되면 표준 출력이 사용됩니다.
출력 형식을 선택합니다.형식중 하나 일 수 있습니다 수행원:
일반 텍스트 출력SQL스크립트 파일 ( 기본).
입력에 적합한 사용자 정의 아카이브를 출력합니다 안으로PG_RESTORE. 이것은 가장 유연한 출력 형식입니다. 보관 된 수동 선택 및 재주문을 허용합니다 복원 중에 항목. 이 형식도 압축됩니다 기본적으로.
출력 a타르-형식 입력에 적합한 아카이브PG_RESTORE. 이 출력 형식 보관 된 수동 선택 및 재주문을 허용합니다 복원 중 항목이지만 제한이 있습니다 테이블 데이터 항목의 상대적 순서는 변경할 수 없습니다 복원 중. 또한,타르형식은 압축을 지원하지 않으며 제한이 있습니다 개별 테이블의 크기에 8GB.
이제 무시되는 더 이상 사용되지 않은 옵션.
덤프 스키마 일치스키마; 이것은 스키마를 모두 선택합니다 그 자체, 그리고 모든 포함 된 개체. 이 옵션이있을 때 지정되지 않은 것은 대상의 모든 비 시스템 스키마입니다 데이터베이스가 덤프됩니다. 여러 스키마를 선택할 수 있습니다 여러 글을 쓰면-n스위치. 또한,스키마매개 변수 동일한 규칙에 따라 패턴으로 해석됩니다. 사용PSQL's\ d명령 (참조패턴), So 와일드 카드를 작성하여 여러 스키마를 선택할 수도 있습니다 패턴의 캐릭터. 와일드 카드를 사용할 때 조심하십시오 껍질을 방지하는 데 필요한 경우 패턴을 인용합니다. 와일드 카드 확장.
참고 :언제-nis 지정,토토 베이다른 데이터베이스 개체를 덤프하려고 시도하지 않습니다 선택한 스키마는 다음에 따라 달라질 수 있습니다. 그러므로 특정 스키마 덤프는 성공적으로 복원 할 수 있습니다 깨끗한 데이터베이스에 빠져 있습니다.
참고 :Blobs와 같은 비 스키마 객체입니다 | 버려지지 않음-nis 지정되었습니다. 로 덤프에 얼룩을 추가 할 수 있습니다.-Blobs스위치.
일치하는 스키마를 버리지 마십시오스키마패턴. 패턴은 for와 같은 규칙에 따라 해석-n. -n제공 될 수 있습니다 몇 가지 일치하는 스키마를 제외하기 위해 한 번 이상 패턴.
둘 다-nand-n행동은 단지 버려야합니다 적어도 하나와 일치하는 스키마-n스위치이지만-n스위치. 만약에-n-n, 그런 다음 스키마 일치-n는 무엇이 제외됩니다 그렇지 않으면 일반 덤프.
덤프 객체 식별자 (OIDs) 모든 데이터의 일부로 테이블. 응용 프로그램이를 참조하는 경우이 옵션을 사용하십시오.OID어떤 식 으로든 열 (예 : 외국의 주요 제약 조건에서). 그렇지 않으면이 옵션 사용해서는 안됩니다.
개체의 소유권을 설정하기 위해 명령을 출력하지 마십시오. 원래 데이터베이스와 일치합니다. 기본적으로토토 베이문제Alter Owner또는세트 세션 승인소유권을 설정하기위한 진술 생성 된 데이터베이스 개체 이 진술은 때 실패 할 것입니다 스크립트는 슈퍼 사용자가 시작하지 않는 한 실행됩니다 (또는 스크립트의 모든 객체를 소유 한 동일한 사용자). 모든 사용자가 복원 할 수있는 스크립트를 만들려면 모든 객체의 사용자 소유권을 지정하고-o.
이 옵션은 일반 텍스트에만 의미가 있습니다 체재. 아카이브 형식의 경우 옵션을 지정할 수 있습니다 전화 할 때PG_RESTORE.
이 옵션은 더 이상 사용되지 않지만 여전히 뒤로 허용됩니다 호환성.
데이터가 아닌 객체 정의 (스키마) 만 덤프합니다.
비활성화시 사용할 슈퍼 사용자 사용자 이름을 지정하십시오 트리거. 이것은 단지 관련이 있다면-disable-triggers가 사용됩니다. (보통, 그것은입니다 이것을 꺼내고 대신 결과를 시작하는 것이 좋습니다. 슈퍼 서서로서의 스크립트.)
덤프 테이블 (또는보기 또는 시퀀스) 일치테이블. 여러 테이블이 가능합니다 여러 글을 쓰면 선택해야-t스위치. 또한,테이블매개 변수는 동일한 것에 따라 패턴으로 해석됩니다. 사용하는 규칙PSQL's\ d명령 (참조패턴), So 와일드 카드를 작성하여 여러 테이블을 선택할 수도 있습니다 패턴의 캐릭터. 와일드 카드를 사용할 때 조심하십시오 껍질을 방지하는 데 필요한 경우 패턴을 인용합니다. 와일드 카드 확장.
the-nand-n스위치는 효과가 없습니다.-t에 의해 선택된 테이블이기 때문에-t에 관계없이 버려집니다 이러한 스위치와 비 테이블 객체는 그렇지 않습니다 덤프.
참고 :언제-tis 지정,토토 베이다른 데이터베이스 개체를 덤프하려고 시도하지 않습니다 선택한 테이블은 다음에 따라 달라질 수 있습니다. 그러므로 특정 테이블 덤프는 성공적으로 복원 할 수 있습니다 깨끗한 데이터베이스에 빠져 있습니다.
참고 :-t스위치는 완전히 위쪽이 아닙니다 Pre-8.2와 호환PostgreSQL버전. 전에, 글쓰기-t 탭모든 것을 버릴 것입니다 테이블탭그러나 이제는입니다 기본값에 보이는 것을 덤프하십시오 검색 경로. 쓸 수있는 오래된 행동을 얻으려면-t '*.tab'. 또한, 당신은해야합니다 와 같은 글을 쓰십시오.-t sch.tab특정 스키마에서 테이블을 선택하려면 오래된 위치보다는-n sch -t 탭.
일치하는 테이블을 버리지 마십시오테이블패턴. 패턴은 for와 같은 규칙에 따라 해석-t. -t제공 될 수 있습니다 한 번 이상 테이블을 제외하기 위해 여러 번 패턴.
둘 다-tand-t주어지면 행동은 단지 버려야합니다 하나 이상 일치하는 테이블-t스위치이지만-t스위치. 만약에-t-t, 그런 다음 테이블 일치-ta 일반 덤프.
정점 모드를 지정합니다. 이로 인해토토 베이상세한 객체를 출력합니다 덤프 파일에 대한 주석 및 시작/중지 시간 표준 오류로의 메시지 진행.
인쇄토토 베이버전 및 종료.
액세스 권한의 덤핑 방지 (Grant/Revoke 명령).
사용할 압축 수준을 지정하십시오. 0은 아니오를 의미합니다 압축. 사용자 정의 아카이브 형식의 경우이를 지정합니다 개별 테이블 데이터 세그먼트의 압축 및 기본값은 적당한 수준으로 압축하는 것입니다. 일반 텍스트 출력, 0이 아닌 압축 수준을 설정하면 발생합니다 전체 출력 파일이 마치 마치 마치 압축 될 것입니다. FED를 통해gzip; 그러나 기본값은 압축되지 않습니다. 타르 아카이브 형식 현재 압축을 전혀 지원하지 않습니다.
이 옵션은 업그레이드 유틸리티에서 사용하기위한 것입니다. 다른 목적으로 사용하는 것은 권장되거나 지원되지 않습니다. 옵션의 동작은 향후 릴리스에서 변경 될 수 있습니다. 통지없이.
덤프 데이터로삽입명령 (대신COPY). 이것은 만들 것입니다 복원은 매우 느립니다. 주로 덤프를 만드는 데 유용합니다 비에로드 될 수 있습니다PostgreSQL데이터베이스. 그러나 그 이후로 이 옵션은 각 행에 대해 별도의 명령을 생성합니다. 행을 다시로드하는 오류로 인해 해당 행만 손실됩니다. 전체 테이블 내용보다는. 주목하십시오 열이 재 배열 된 경우 복원이 완전히 실패 할 수 있습니다 주문하다. 그만큼-Column-Inserts옵션 그래도 열 순서 변경에도 안전합니다 느리게.
덤프 데이터로삽입명령 명시 적 열 이름 (삽입테이블(컬럼, ...) 값 ...). 이것 복원을 매우 느리게 만들 것입니다. 주로 유용합니다 비에로드 할 수있는 덤프 제작PostgreSQL데이터베이스. 그러나 그 이후로 이 옵션은 각 행에 대해 별도의 명령을 생성합니다. 행을 다시로드하는 오류로 인해 해당 행만 손실됩니다. 전체 테이블 내용보다는 대신.
이 옵션은 달러 견적 사용을 비활성화합니다 기능 본체, SQL을 사용하여 인용하도록 강요 표준 문자열 구문.
이 옵션은 데이터 전용을 만들 때만 관련이 있습니다 덤프. 지시토토 베이일시적으로 트리거를 비활성화하는 명령을 포함합니다 데이터가 다시로드되는 동안 대상 테이블. 당신이 이것을 사용하십시오 참조 무결성 검사 또는 기타 트리거가 있습니다 데이터 중에 호출하고 싶지 않은 테이블 Reload.
현재, 명령은-disable-triggers슈퍼 유저로 수행해야합니다. 따라서의 슈퍼 유저 이름도 지정해야합니다.-s, 또는 바람직하게는주의하십시오 결과 스크립트를 슈퍼업자로 시작하십시오.
이 옵션은 일반 텍스트에만 의미가 있습니다 체재. 아카이브 형식의 경우 옵션을 지정할 수 있습니다 전화 할 때PG_RESTORE.
공유 테이블 잠금을 획득하기 위해 영원히 기다리지 마십시오. 덤프의 시작. 대신 잠금 할 수없는 경우 실패합니다 지정된 테이블타임 아웃. 시간 초과가 지정 될 수 있습니다 에 의해 허용되는 형식 중세트 state_timeout. (허용 값은에 따라 다릅니다 덤프하는 서버 버전이지만 정수 밀리 초 수는 그 이후로 모든 버전에서 허용됩니다 7.3. 이 옵션은 7.3 이전에서 덤프 할 때 무시됩니다 섬기는 사람.)
테이블 스페이스를 선택하려면 명령을 출력하지 마십시오. 이것으로 옵션, 모든 객체는 어떤 테이블 스페이스에서 생성됩니다 복원 중 기본값입니다.
이 옵션은 일반 텍스트에만 의미가 있습니다 체재. 아카이브 형식의 경우 옵션을 지정할 수 있습니다 전화 할 때PG_RESTORE.
출력 SQL-Standard세션 설정 권한 부여대신 명령Alter Owner개체를 결정하도록 명령합니다 소유권. 이로 인해 덤프가 더 많은 표준과 호환됩니다. 그러나 덤프의 물체의 역사에 따라 제대로 복원되지 않을 수 있습니다. 또한, 사용세션 승인 설정확실히 슈퍼업자 권한이 올바르게 복원하려면Alter Owner더 적은 사람이 필요합니다 특권.
도움말 표시토토 베이명령 줄 인수 및 종료.
다음 명령 줄 옵션은 데이터베이스를 제어합니다 연결 매개 변수.
기계의 호스트 이름을 지정합니다. 서버가 실행 중입니다. 값이 슬래시로 시작하면입니다 UNIX 도메인 소켓의 디렉토리로 사용됩니다. 그만큼 기본값은에서 가져옵니다.PGHOST환경 변수, 설정된 경우 UNIX 도메인 소켓 연결이 시도됩니다.
TCP 포트 또는 로컬 UNIX 도메인 소켓 파일 지정 서버가 연결을 듣는 확장. 기본값pgport환경 변수, 세트 인 경우 또는 컴파일 된 기본값
사용자 이름으로 연결합니다.
비밀번호 프롬프트를 발행하지 마십시오. 서버에 필요한 경우 비밀번호 인증 및 비밀번호는 사용할 수 없습니다 a와 같은 기타 수단.pgpass파일, 연결 시도가 실패합니다. 이 옵션이 될 수 있습니다 사용자가없는 배치 작업 및 스크립트에 유용합니다. 비밀번호를 입력하려면
힘토토 베이프롬프트 데이터베이스에 연결하기 전에 비밀번호의 경우.
이 옵션은 결코 필수적이지 않습니다.토토 베이자동으로 프롬프트가됩니다 서버가 암호 인증을 요구하는 경우 비밀번호. 하지만,토토 베이의지 연결을 낭비하여 서버를 찾아냅니다 비밀번호를 원합니다. 어떤 경우에는 입력 할 가치가 있습니다-w추가 연결을 피하려면 시도.
덤프를 만드는 데 사용할 역할 이름을 지정합니다. 이 옵션은토토 베이a를 발행하려면역할 설정 rolename연결 후 명령 데이터베이스. 인증 된 사용자 일 때 유용합니다 (지정-u) 특권이 부족합니다 필요토토 베이그러나 할 수 있습니다 필요한 권리로 역할로 전환하십시오. 일부 설치에는 직접 로그인하는 정책이 있습니다 수퍼 유저 및이 옵션을 사용하면 덤프를 만들 수 있습니다. 정책을 위반하지 않고.
기본 연결 매개 변수.
이 유틸리티, 대부분의 다른 유틸리티PostgreSQL유틸리티도 사용합니다 지원되는 환경 변수libpq(참조섹션 31.13).
토토 베이내부 실행select진술. 문제가있는 경우 달리기토토 베이, 당신을 확인하십시오 다음을 사용하여 데이터베이스에서 정보를 선택할 수 있습니다. 예,PSQL. 또한 모든 기본 연결 에 사용 된 설정 및 환경 변수libpq프론트 엔드 라이브러리가 적용됩니다.
의 데이터베이스 활동토토 베이일반적으로 통계 수집가. 이것이 바람직하지 않은 경우 설정할 수 있습니다 매개 변수track_counts거짓으로pgoptions또는ALTER 사용자명령.
데이터베이스 클러스터에 로컬 추가가있는 경우Template1데이터베이스,주의하십시오 의 출력 복원토토 베이진정으로 빈 데이터베이스로; 그렇지 않으면 당신은 얻을 수 있습니다 추가 된 객체의 중복 정의로 인한 오류. 만들기 위해 로컬 추가가없는 빈 데이터베이스, 복사Template0아님Template1, 예 :
템플릿 템플릿을 사용하여 데이터베이스 foo 생성;
데이터 전용 덤프가 선택되고 옵션-disable-triggers사용됩니다.토토 베이트리거를 비활성화하기 위해 명령을 내립니다 데이터를 삽입하기 전에 사용자 테이블에서 데이터가 삽입 된 후 다시 활성화 할 수 있습니다. 복원 된 경우 중간에 중지되면 시스템 카탈로그가 남아있을 수 있습니다. 잘못된 상태.
TAR Archives의 구성원은 8GB 미만의 크기로 제한됩니다. (이것은 TAR 파일 형식의 고유 한 제한입니다.) 따라서 텍스트 인 경우이 형식을 사용할 수 없습니다 한 테이블의 표현은 그 크기를 초과합니다. 총 크기 타르 아카이브 및 기타 출력 형식 중 하나는 운영 체제의 경우를 제외하고는 제한적입니다.
덤프 파일에서 생성토토 베이사용 된 통계가 포함되어 있지 않습니다 쿼리 계획 결정을 내리는 옵티마이저이저에 의해. 따라서, 그것은 실행하는 것이 현명하다분석복원 후 덤프 파일에서 최적의 성능을 보장합니다. 보다섹션 23.1.3및섹션 23.1.5자세한 내용. 덤프 파일도 그렇지 않습니다 포함데이터베이스 변경 ... 세트명령; 이 설정은토토 베이all, 데이터베이스 사용자와 함께 및 기타 설치 전체 설정.
왜냐하면토토 베이익숙합니다 최신 버전의로 데이터를 전송합니다.PostgreSQL, 출력토토 베이로드 될 수 있습니다PostgreSQL서버 버전이 더 새로워집니다 보다토토 베이의 버전.토토 베이에서도 덤프 할 수 있습니다PostgreSQL보다 오래된 서버 자체 버전. (현재 버전 7.0으로 돌아가는 서버는 다음과 같습니다 지원.) 그러나토토 베이덤프 할 수 없음PostgreSQL자체 주요 버전보다 새로운 서버; 그것은 심지어 거부 할 것입니다 유효하지 않은 덤프가 될 위험이 아니라 시도하십시오. 또한 그렇지 않습니다 보장토토 베이의 출력 이전 주요 버전의 서버에로드 할 수 있습니다. 덤프가 해당 버전의 서버에서 가져온 경우. 로드 a 이전 서버에 파일을 덤프하면 수동 편집이 필요할 수 있습니다. 구문을 제거하려면 파일을 덤프하여 구식으로 이해하지 못함 섬기는 사람.
라는 데이터베이스를 덤프하려면MyDBa SQL 스크립트 파일 :
$ 토토 베이 mydb db.sql
그러한 스크립트를 (새로 생성 된) 데이터베이스로 다시로드하려면 이름newdb:
$ PSQL -D NEWDB -F DB.SQL
사용자 정의 아카이브 파일에 데이터베이스를 덤프하려면 :
$ 토토 베이 -fc mydb db.dump
아카이브 파일을 (새로 생성 된) 데이터베이스에 다시로드하려면 이름newdb:
$ PG_RESTORE -D NEWDB DB.DUMP
단일 테이블을 덤프하려면Mytab:
$ 토토 베이 -t mytab mydb db.sql
이름으로 시작하는 모든 테이블을 버리려면empin디트로이트이름이 지정된 테이블을 제외한 스키마Employee_log:
$ 토토 베이 -t 'detroit.emp*'-t detroit.employee_log mydb db.sql
이름으로 시작하는 모든 스키마를 버리려면East또는Westand inGSM, 이름의 스키마를 제외하고 단어 포함테스트:
$ 토토 베이 -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