무지개 토토유틸리티입니다 a 복원PostgreSQL데이터베이스 에서 만든 아카이브에서토토 핫 postgresql : 문서 : 8.1 : pg_dump텍스트가 아닌 형식 중 하나입니다. 명령을 발행합니다 데이터베이스를 상태로 재구성 할 필요가 있습니다. 그것이 구원받은 시간. 아카이브 파일도 허용무지개 토토무엇이 무엇인지 선택적으로 생각합니다 복원되거나 복원되기 전에 항목을 재정렬하기도합니다. 아카이브 파일은 휴대용으로 설계되었습니다 아키텍처.
무지개 토토2 개로 작동 할 수 있습니다 모드. 데이터베이스 이름이 지정된 경우무지개 토토해당 데이터베이스에 연결합니다 아카이브 내용을 데이터베이스로 직접 복원합니다. 그렇지 않으면, 재건하는 데 필요한 SQL 명령이 포함 된 스크립트 데이터베이스는 파일 또는 표준 출력에 작성되어 작성됩니다. 이 스크립트 출력은 일반 텍스트 출력 형식과 동일합니다. 의pg_dump. 옵션 중 일부 따라서 출력을 제어하는 것은와 유사합니다.pg_dump옵션.
분명히,무지개 토토할 수 없습니다 아카이브 파일에없는 정보를 복원하십시오. 을 위한 인스턴스, 아카이브가를 사용하여 만들어진 경우"덤프 데이터 as삽입명령 "옵션,무지개 토토데이터를로드 할 수 없습니다 사용COPY진술.
무지개 토토다음 명령 줄 인수.
아카이브 파일의 위치를 지정합니다 복원. 지정되지 않으면 표준 입력이 사용됩니다.
스키마가 아닌 데이터 만 복원하십시오 (데이터 정의).
재현하기 전에 클린 (DROP) 데이터베이스 개체 그들을.
복원하기 전에 데이터베이스를 만듭니다. (이번 옵션이 사용됩니다.-d초기를 발행하는 데만 사용됩니다데이터베이스 생성명령. 모든 데이터 표시되는 데이터베이스 이름으로 복원됩니다. 보관소.)
데이터베이스에 연결dbname로 직접 복원하십시오 데이터 베이스.
SQL을 보내는 동안 오류가 발생하면 종료합니다 데이터베이스 명령. 기본값은 계속하고 끝에 오류 수를 표시합니다. 복구.
생성 된 스크립트 또는 와 함께 사용될 때 리스팅-l. 기본 표준 출력입니다.
아카이브의 형식을 지정합니다. 필요하지 않습니다 이후 형식 지정무지개 토토형식을 결정합니다 자동으로. 지정된 경우 하나 일 수 있습니다 수행원:
아카이브는 A입니다.타르아카이브.
아카이브는의 사용자 정의 형식입니다.pg_dump.
데이터베이스 버전 확인을 무시합니다.
명명 된 인덱스의 정의 복원.
아카이브의 내용을 나열하십시오. 이것의 출력 작업은에 대한 입력으로 사용할 수 있습니다.-l옵션. 필터링 스위치 인 경우 주목하십시오 와 같은-n또는-t-l, 나열된 항목을 제한합니다.
나열된 아카이브 요소 만 복원List-File를 복원하십시오 순서대로 파일에 나타납니다. IF에 유의하십시오 와 같은 필터링 스위치-n또는-t-l, 그들은 항목을 더 제한합니다 복원.
List-File일반적으로입니다 이전의 출력을 편집하여 생성-l작동. 선을 이동하거나 제거 할 수 있습니다. 세미콜론을 배치하여 댓글을 달 수 있습니다. (;) 라인의 시작시. 보다 아래 예제는 아래에 있습니다.
명명 된 스키마에있는 객체 만 복원합니다. 이것 와 결합 할 수 있습니다.-t옵션 특정 테이블 만 복원하려면
개체의 소유권을 설정하기 위해 명령을 출력하지 마십시오. 원래 데이터베이스와 일치합니다. 기본적으로무지개 토토문제Alter Owner또는세트 세션 승인소유권을 설정하기위한 진술 스키마 요소를 생성했습니다. 이 진술은 그렇지 않으면 실패 할 것입니다 데이터베이스에 대한 초기 연결은 Superuser (또는 모든 객체를 소유 한 동일한 사용자 대본). 와 함께-o, 모든 사용자 이름 초기 연결에 사용할 수 있으며이 사용자는 생성 된 모든 개체를 소유하고 있습니다.
명명 된 함수 만 복원하십시오. 철자를 조심하십시오 함수 이름과 인수가 파일의 내용 테이블 덤프.
이 옵션은 더 이상 사용되지 않지만 여전히 뒤로 허용됩니다 호환성.
데이터가 아닌 스키마 (데이터 정의) 만 복원합니다 (테이블 내용). 시퀀스 전류 값은 그렇지 않습니다 복원. (이것을와 혼동하지 마십시오.--- 스키마단어를 사용하는 옵션"스키마"다른 의미.)
비활성화 할 때 사용할 슈퍼 사용자 사용자 이름을 지정하십시오 트리거. 이것은 단지 관련이 있다면-disable-triggers사용됩니다.
명명 된 테이블의 정의 및/또는 데이터 복원.
Trigger 만 명명 된 복원.
정점 모드를 지정합니다.
액세스 권한의 복원 방지 (Grant/Revoke 명령).
출력 SQL-Standard세션 설정 권한 부여대신 명령Alter Owner개체를 결정하는 명령 소유권. 이로 인해 덤프가 더 많은 표준을 호환 할 수 있습니다. 그러나 덤프의 물체의 역사에 따라 제대로 복원 할 수 없습니다.
이 옵션은 데이터 전용을 수행 할 때만 관련이 있습니다 복원하다. 지시무지개 토토명령을 실행하려면 대상 테이블에서 트리거를 일시적으로 비활성화합니다 데이터가 다시로드됩니다. 참조가있는 경우 이것을 사용하십시오 무결성 점검 또는 다른 테이블의 기타 트리거 데이터를 다시로드하는 동안 호출하고 싶지 않습니다.
현재, 명령은-disable-triggers슈퍼 서서로 수행해야합니다. 따라서의 슈퍼 유저 이름도 지정해야합니다.-s또는 바람직하게는 실행무지개 토토asPostgreSQLSuperUser.
무지개 토토연결 매개 변수에 대한 명령 줄 인수 :
기계의 호스트 이름을 지정합니다. 서버가 실행 중입니다. 값이 슬래시로 시작하면입니다 UNIX 도메인 소켓의 디렉토리로 사용됩니다. 그만큼 기본값은에서 가져옵니다.pghost환경 변수, 설정된 경우 UNIX 도메인 소켓 연결이 시도됩니다.
TCP 포트 또는 로컬 UNIX 도메인 소켓 파일 지정 서버가 연결을 듣는 확장. 기본값pgport환경 변수, 세트 인 경우 또는 컴파일 된 기본값
주어진 사용자로 연결
암호 프롬프트를 강제로합니다. 이것은 일어날 것입니다 서버에 비밀번호가 필요한 경우 자동으로 입증.
직접 데이터베이스 연결이를 사용하여 지정된 경우-d옵션,무지개 토토내부 실행SQL진술. 당신이 있다면 실행 문제무지개 토토, 데이터베이스에서 정보를 선택할 수 있는지 확인하십시오. 예를 들어 사용,PSQL.
설치에 로컬 추가가있는 경우Template1데이터베이스, 출력을로드하도록주의하십시오 의무지개 토토진정으로 비어 있습니다 데이터 베이스; 그렇지 않으면 복제로 인해 오류가 발생할 수 있습니다. 추가 된 객체의 정의. 빈 데이터베이스를 만들기 위해 로컬 추가 없이는에서 복사하십시오.Template0notTemplate1, 예를 들어:
템플릿 템플릿을 사용하여 데이터베이스 foo 생성;
의 한계무지개 토토아래에 자세히 설명되어 있습니다.
데이터를 기존 테이블로 복원 할 때 옵션-disable-triggers사용,무지개 토토명령을 내립니다 데이터를 삽입하기 전에 사용자 테이블의 트리거를 비활성화합니다 그런 다음 데이터가있는 후에 다시 활성화하기 위해 명령을 방출합니다. 삽입. 복원이 중간에 중지되면 시스템이 카탈로그는 잘못된 상태로 남을 수 있습니다.
무지개 토토그렇지 않습니다 단일 테이블의 큰 물체를 복원하십시오. 아카이브 인 경우 큰 물체를 포함하면 모든 큰 물체가 있습니다 복원.
참조토토 핫 postgresql : 문서 : 8.1 : pg_dump제한에 대한 자세한 내용pg_dump.
일단 복원되면 실행하는 것이 현명합니다분석최적화 테이블 각각의 테이블에서 유용한 통계가 있습니다.
라는 데이터베이스를 덤프하려면MyDBto a타르파일 :
$ pg_dump -ft mydb db.tar
이 덤프가라는 기존 데이터베이스로 다시로드하려면NewDB:
$ 무지개 토토 -D NEWDB DB.TAR
데이터베이스 항목을 재정렬하려면 먼저 덤프해야합니다. 아카이브의 목차 :
$ pg_restore -l archive.file archive.list
목록 파일은 각각 헤더와 한 줄로 구성됩니다. 항목 (예 :
; ; 28 일 28 일 28 일 22:28:36 2000에서 제작 된 아카이브 ; dbname : 새 ; TOC 항목 : 74 ; 압축 : 0 ; 덤프 버전 : 1.4-0 ; 형식 : 사용자 정의 ; ; ; 선택된 TOC 항목 : ; 2; 145344 테이블 종 Postgres 3; 145344 ACL 종 4; 145359 표 nt_header postgres 5; 145359 ACL NT_HEADER 6; 145402 Table Species_records Postgres 7; 145402 ACL 종 _records 8; 145416 표 ss_old postgres 9; 145416 ACL SS_OLD 10; 145433 테이블 map_resolutions postgres 11; 145433 ACL MAP_RESOLUTS 12; 145443 테이블 hs_old postgres 13; 145443 ACL HS_OLD
세미콜론은 의견을 시작하고 시작시 숫자 라인은 각 항목에 할당 된 내부 아카이브 ID를 나타냅니다.
파일의 줄은 주석, 삭제 및 재정렬. 예를 들어,
10; 145433 테이블 map_resolutions postgres ; 2; 145344 테이블 종 Postgres ; 4; 145359 표 nt_header postgres 6; 145402 Table Species_records Postgres ; 8; 145416 표 ss_old postgres
입력으로 사용될 수 있습니다무지개 토토그리고 항목 10 만 복원합니다 그리고 6, 순서대로 :
$ pg_restore -l archive.list archive.file