반응형
pg_restore가 성공적으로 반환되지만 실제로 데이터베이스를 복원하지 않는 이유는 무엇입니까?
다음 명령을 사용하여 덤프 한 Linux 서버에 Postgres 8.4 데이터베이스가 있습니다.
pg_dump --format=c --exclude-table=log --file=/path/to/output my_db
그런 다음 생성 된 파일을 로컬 Windows 7 시스템에 ftp하고 다음 명령을 사용하여 파일을 로컬 Postgres 8.4 인스턴스로 복원하려고합니다.
pg_restore --create --exit-on-error --verbose c:\path\to\file
restore 명령은 내 데이터베이스를 생성하고 연결 한 다음 예상대로 다른 모든 테이블을 생성했다고 주장하는 많은 출력을 생성합니다. 그러나 pgAdmin을 통해 로컬 컴퓨터의 데이터베이스를 볼 때 복원 된 데이터베이스는 전혀 존재하지 않습니다.
문제를 해결하기 위해 다음 명령을 시도했습니다.
pg_restore --create --exit-on-error --verbose --host=blahblah --username=no_one c:\path\to\file
주어진 호스트와 사용자 이름이 완전히 말도 안되는 경우 에도이 명령을 실행하면 오류없이 명령에서 똑같은 출력이 계속 나타납니다.
누구든지 전에 이것을 실행했거나 이것을 유발하여 무엇을 할 수 있는지 알고 있습니까?
처음 연결하려면 유효한 데이터베이스의 이름을 추가해야합니다. 그렇지 않으면 내용을 STDOUT에 덤프합니다.
pg_restore --create --exit-on-error --verbose --dbname=postgres <backup_file>
이것은 여전히 혼란 스럽습니다 .-- dbname이 내가 만들고 싶은 db가되어야한다는 것을 실행하려고 시도했습니다.
pg_restore --create --exit-on-error --verbose --dbname=jiradb jiradb.tar
잘못된!!
말 그대로 --dbname postgres 여야하며 --create는 파일의 이름에서 실제 db를 생성합니다. 제 경우에는 다음을 사용하여 tar 백업에서 복원했습니다.
pg_restore --create --exit-on-error --verbose --dbname=postgres jiradb.tar
반응형
'IT Share you' 카테고리의 다른 글
ToLowerInvariant ()의 문제점은 무엇입니까? (0) | 2020.12.15 |
---|---|
내 Powershell 스크립트 매개 변수에 대한 도움말 메시지가 표시되도록하려면 어떻게합니까? (0) | 2020.12.15 |
C ++에서 Pointer-to-Member-> * 및. * 연산자는 무엇입니까? (0) | 2020.12.15 |
파일 Uri 체계 및 상대 파일 (0) | 2020.12.15 |
Visual Studio 2010 용 간단한 HTML 프로젝트 유형 (0) | 2020.12.15 |