小编典典

如何在 ubuntu 上彻底清除并重新安装 postgresql?[关闭]

all

不知何故,我设法完全在 Ubuntu 业力上安装了 postgresql。我想从头开始,但是当我使用 apt-get
“清除”软件包时,它仍然会留下痕迹,导致重新安装配置无法正常运行。

在我完成之后:

apt-get purge postgresql
apt-get install postgresql

它说

Setting up postgresql-8.4 (8.4.3-0ubuntu9.10.1) ...
Configuring already existing cluster (configuration: /etc/postgresql/8.4/main, data: /var/lib/postgresql/8.4/main, owner: 108:112)
Error: move_conffile: required configuration file     /var/lib/postgresql/8.4/main/postgresql.conf does not exist
Error: could not create default cluster. Please create it manually with

  pg_createcluster 8.4 main --start

or a similar command (see 'man pg_createcluster').
update-alternatives: using /usr/share/postgresql/8.4/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode.

Setting up postgresql (8.4.3-0ubuntu9.10.1) ...

我有一个“/etc/postgresql”,里面什么都没有,“/etc/postgresql-common/”有一个
‘pg_upgradecluser.d’ 目录和 root.crt 和 user_clusters 文件。

/etc/passwd 有一个 postgres 用户;清除脚本似乎没有触及它。有一堆症状,我只是为了暴露下一个症状。

就在这一秒,当我运行该命令“pg_createcluster
…”时,它抱怨“/var/lib/postgresql/8.4/main/postgresql.conf
不存在”,所以我会去找其中一个,但我我确信这不会结束。

有没有一些简单的(或两个)可以完全烧掉它并让我重新开始的方法?


阅读 83

收藏
2022-05-26

共1个答案

小编典典

选项 A

如果您的安装尚未损坏,您可以使用pg_dropcluster. 如果您只想使用新的 PostgreSQL
实例重新启动,请优先使用它而不是完全清除并重新安装。

$ pg_lsclusters
Ver Cluster Port Status Owner    Data directory              Log file
11  main    5432 online postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log
$ sudo systemctl stop postgresql@11-main
$ sudo pg_dropcluster --stop 11 main
$ sudo pg_createcluster --start 11 main

选项 B

如果你真的需要彻底清除并重新安装,首先确保 PostgreSQL 没有运行。ps -C postgres应该没有结果。

现在运行:

apt-get --purge remove postgresql\*

从您的系统中删除所有 PostgreSQL。仅仅清除postgres包是不够的,因为它只是一个空的元包。

删除所有 PostgreSQL 软件包后,运行:

rm -r /etc/postgresql/
rm -r /etc/postgresql-common/
rm -r /var/lib/postgresql/
userdel -r postgres
groupdel postgres

您现在应该能够:

apt-get install postgresql

或完整安装:

apt-get install postgresql-8.4 postgresql-contrib-8.4 postgresql-doc-8.4
2022-05-26