如何正确卸载Postgresql?

如何正确卸载Postgresql?

我已经弄乱了 template1 数据库,并且想将所有内容重置为原样。

因此我做了sudo apt-get purge postgresql

但是下次我重新安装时,数据库仍然存在。为什么?什么都没有重置。

答案1

当您创建数据库时,会创建该数据库的数据文件。这些文件(当然)不会被 apt purge 清除。

如果/etc/postgresql/8.4/main/postgresql.conf(可能不是8.4- 使用你的版本)仍然存在,你可以找到类似

data_directory = '/var/lib/postgresql/8.4/main' # 使用另一个目录中的数据

您可以在此处找到您创建的数据库的数据文件。如果您创建了自己的数据目录,我相信您会记得它们在哪里。

用户postgresql还存在吗?这是数据库文件的所有者。删除此用户并搜索其所有文件(使用类似 之类的东西deluser --remove-all-filesman deluser会有所帮助)。如果此用户不存在,find则删除文件系统中所有没有关联用户的文件。(使用find / -nouser -nogroup- 并再次阅读man find:-) )

如需了解更多信息,请咨询精彩的 postgresql 文档

答案2

您不需要为此删除并重新安装 PostgreSQL。

sudo -u postgres psql postgres
drop database template1;
create database template1 template template0;

相关内容