2014-04-02 2 views
0

원격 서버에서 데이터베이스 덤프를 가져와야하지만 로컬 시스템에서 데이터베이스 덤프를 다운로드 한 다음 단일 시스템을 사용하여 로컬 시스템에서 직접 복원하고 싶습니다. 명령. 실제로 내 원격 서버 디스크가 가득 차서 데이터 bakup을 가져갈 수 없습니다.단일 명령으로 원격 시스템에서 로컬 시스템으로 postgresql 데이터를 백업하고 복원하는 방법

+1

'pg_dump'를 사용하십시오. 그것은 클라이언트 도구이며 파일 시스템에 덤프를 시작합니다. –

+0

http://www.postgresql.org/docs/current/static/backup-dump.html –

+0

@ MilenA.Radev : 파일을 작성하지 않고 한 파일에서 덤프 및 복원하십시오. 뭔가 파이프 라이닝 개념 같아. 우리는 tar와 같은 다른 형식을 사용하는 것과 같은 방식으로 dir 형식으로 복원 할 수 있습니다. – user3143770

답변

1

로컬 시스템 중 하나에서 pg_dump의를 설치하고 로컬 시스템

pg_dump -h your_remort_syten's_ip -U username database_name > /home/user/Desktop/dump_db.sql 

에서 다음 명령을 실행 나는이 유 도움이 될 것입니다 생각합니다.

+0

감사합니다. bakup 파일을 작성하지 않고 직접 복원하는 명령이 있습니까? 하나의 라인 명령처럼 백업하고 복원 할 수 있습니다. – user3143770

+0

@ user3143770 - 파이프 만 pg_dump에서 pg_restore로 이동 –

0

당신은 이것에 대한 파이프를 사용할 수 있습니다

pg_dump -f - ... | psql -f - ... 

나 :

pg_dump -Fc -f - ... | pg_restore -f - .... 

-f - 매개 변수 (실제로 pg_dump의 기본이지만, 명확성을 위해 포함)를 작성하는 명령을 알려줍니다 stdout/stdin에서 적절하게 읽으십시오.

관련 문제