PostgreSQL을 기본값으로 완전히 재설정 하시겠습니까?


16

질문

Linux에서 PostgreSQL 설치를 완전히 재설정 할 수있는 방법이 있습니까? 설치했을 때와 같은 상태입니까?

생각

나는 고려했다

rm -rf /var/lib/pgsql/*
rm -rf /var/lib/pgsql/backups/*
rm -rf /var/lib/pgsql/data/*

그러나 이것은 권장되는 방법이 아닙니다.

목적

이것은 이전에 사용한 프로그램에서 남은 부분을 제거하는 데 편리합니다.


답변:


4

즉, 어떻게해야 - 단지 있는지 먼저 현재 구성이 실제로 있는지 확인 하지 않습니다 해당 디렉토리에 파일을 저장합니다.

완료되면 데이터베이스를 다시 시작하십시오.

sudo -U pgsql initdb

1
아니, 제발 우분투에서는 적어도 자체 래퍼 도구를 사용해야하기 때문에 끔찍한 혼란을 초래할 수 있습니다.
Craig Ringer

1
그렇습니다? 글쎄, 다른 시스템을 사용해야 할 또 다른 이유가 있습니다. 개인적으로 FreeBSD에 투표하지만 각각 자체적으로 투표합니다.
Jenny D

@Craig : 어떤 종류의 혼란이 생길까요? 방금 우분투 에서이 방법을 사용 했으며 나에게 괜찮습니다 . 답변에 세부 사항을 추가 하시겠습니까?
17:37에

1
@halfer postgresql.conf와 pg_hba.conf로 시작하는 것이 ububtu 스크립트가 기대하는 곳이 아닙니다. 또는 initdb가 생성 한 것을 무시하고 이전 것을 계속 사용합니다.
Craig Ringer

이것이 우리가 연결 한 원격 데이터베이스이고 로컬에서 초기화 한 원격 데이터베이스가 아닌 경우 어떻게해야합니까?
anon58192932

24

설치 방법에 따라 다릅니다.

패키지의 우분투 (내장 또는 apt.postgresql.org)

사용하십시오 pg_wrapper. PostgreSQL에 대한 Ubuntu 문서를 참조하십시오 . pg_dropcluster기존의 모든 Pg 클러스터 pg_createcluster에 깨끗한 새 클러스터를 원합니다 .

마십시오 하지 만 데이터 디렉토리 및 재 initdb에 삭제합니다.

CentOS / RH / Fedora, 내장 패키지

나는 이것을 설치하지 않았으며 지금 쉽게 테스트 할 수 없습니다. 메모리에서 서버를 중지하고 데이터 디렉토리를 삭제하는 것이 안전하다고 생각합니다.

CentOS / RH / Fedora, yum.postgresql.org 패키지

참조하십시오 /usr/share/doc/postgresql??-?.?.?/README.rpm-dist.

systemctl또는 servicewrapper 명령으로 서버를 중지하고 데이터 디렉토리를 삭제 한 다음 실행 /usr/pgsql-9.3/bin/postgresql93-setup initdb하십시오 (버전에 따라 경로 조정).

EDB 설치 프로그램의 모든 배포

서버를 중지하고 데이터 디렉토리와 initdb새 클러스터를 삭제하십시오 . 설치 프로그램 문서를 참조하십시오.

소스에서

서버를 중지하고 데이터 디렉토리를 삭제 한 후 re-initdb를 수행하십시오.

OS X

사제 : brew uninstall postgresql; brew cleanup; brew install postgresql

Postgres.app? EDB 인스톨러? 맥 포트?

맥주를 찾으십시오. 맥주를 마신다. 반복. 그래도 통증이 사라지지 않으면 더 강해지십시오.

윈도우

  • 서비스 중지
  • 데이터 디렉토리 삭제
  • runas.exepostgres 사용자 (pre-9.2) 또는 NETWORKSERVICE(9.2+)를 사용하여 initdb를 다시 실행하십시오 . 또는 나중에 소유권을 변경하십시오.

1
OS X의 경우, brew uninstall and cleanup은 내 데이터 디렉토리 /usr/local/var/postgresql@9.5에 영향을 미치지 않습니다. (/usr/local/opt/postgresql@9.5에서 앱을 제거합니다. "var"이 아닌 "opt"에 유의하십시오) "rm -rf /usr/local/var/postgresql@9.5"는 다시 설치하기 전에 필요했습니다.
커티스 얄롭

4

그냥 제거하고 다시 설치하는 것이 가장 좋지 않습니까?

그렇게하면 최신 버전을 얻고 그에 따른 의존성을 업데이트 할 수 있습니다.

실행 : sudo apt-get --purge remove postgresql

그런 다음 : sudo apt-get install postgresql


1
이것은 기존 DB + 사용자를 제거하지 않았습니다 (Postgres 9.5 기준)
Sebastian Wagner
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.