2013-06-18 3 views
3

PostgreSQL 8.4를 실행하는 데 사용되는 이전 postgresql 데이터베이스로 부팅하지 않는 깨진 VM이 있습니다. 파일 시스템 (및 pg_data 디렉토리)에 대한 액세스 권한이 있습니다.pg_data 디렉토리에서 Postgres 데이터베이스를 복원하십시오.

어떻게이 데이터 디렉토리에서 데이터를 추출 (또는 데이터베이스 복원) 할 수 있습니까?

이 디렉토리의 내용을 작동하는 8.4 pg_data 디렉토리에 복사하는 것만 큼 간단합니까?

답변

4

사실 기본적으로 간단합니다.

1) tar.gz 파일로 data 디렉토리 (/var/lib/postgres/8.4/data)를 아카이브 : 여기이 작업을 얻기 위해 수행 한 단계입니다.)

2) PostgreSQL의 APT 저장소 설치) 리눅스의 데비안 기반 배포)

3을 실행, 작업 워크 스테이션 (내 바탕 화면에 파일을 이동하고 postgresql-8.4를 설치 (또는 깨진 서버에 있던 버전 the PostgreSQL Linux downloads for Ubuntu에있는 지침을 사용하십시오.

4) tar.gz 파일의 내용을 "새로운"PostgreSQL 8.4 설치 (/var/lib/postgresql/8.4/main/)의 기본 디렉토리로 추출하십시오.

port = 5432port = 5433으로 변경하려면 postgresql.conf을 수정하십시오. 이렇게하면 포트 번호를 사용하여 연결할 PostgreSQL 버전을 제어 할 수 있습니다 (9.1과 같이 워크 스테이션에 최신 안정 버전이 있다고 가정). chown -R postgres:postgres /var/lib/postgresql/8.4/main/*

7) 포스트 그레스 서비스를 시작합니다 : service postgresql start를 (그래서 9.1은 기본 5432에 머물 것이며, 5433

6) 포스트 그레스 이렇게 추출 된 데이터 디렉토리의 소유권을 수정에 8.4가 될 것입니다 소유자 당신은 포스트 그레스로

8) su) 두 버전이 시작보고 포트 5433를 사용하여 연결하고 기존 서버에 있던 데이터베이스 이름 있습니다 : psql -p 5433 DatabaseName

관련 문제