我是Linux新手,我发现很难安装旧版本的postgresql(以及postgis)。我已经卸载了我能找到的与aptidude中的postgresql相关的所有内容。由于只有最新版本可通过apt-get install获得,我已经通过几个教程如何安装9.1。 示例:https://wiki.postgresql.org/wiki/Apt(最后为9.1,而不是9.3) 在完成本教程后,pgAdmin III仍然显示9.3版本。 转储9.3并安装9.1以及postgis 1.5的正确方法是什么?
我正在使用Mint 17
答案 0 :(得分:3)
好。首先,将多个版本的postgresql并排运行是完全可以的。您可以在一个盒子上拥有多个群集,每个群集可以运行不同的版本。 debian pacakges的设计非常好,可以轻松完成。
但是,既然你已经表明你是linux / postgresql的新手,那么最好从你的系统中完全清除9.3以避免令人沮丧的打嗝,这将花费你很长时间来计算进行。
要做到这一点,你需要:
第1步 - 清除DPKG
DPKG管理您系统上的软件包。 APT充当获取软件包安装的机制。通过apt可以获得很多DPKG功能,但有些东西在dpkg上更容易。在您的评论中,您已经证明DPKG仍然显示9.3的残余。卸载软件包时,它的某些部分可能会挂起(例如配置文件)。您可以在一个命令中删除多个包。要完全摆脱这些,你可以告诉dpkg清除它们dpkg --purge <package name>
。您可以在一个命令中删除多个包,但最好这样做。
dpkg --list
会列出您系统上的所有内容。 dpkg --list | grep postgresql
在此列表中搜索postgresql。
步骤2 - 从旧的9.3群集中手动删除数据和配置。
首次安装postgresql时,它会为您创建一个群集;无话可问。这让很多新用户感到高兴,因为他们既不知道它发生了,也不知道如何更换它。现在已经卸载了9.3,您可以直接删除配置和数据:
如果您想要在已安装的9.3数据库中保留任何内容,请不要运行以下命令
sudo rm -rf /etc/postgresql/9.3
删除配置。
sudo rm -rf /var/lib/postgresql/9.3
删除数据。
第3步 - 创建新群集
您已在评论中指出已安装postgresql 9.1。在运行此命令之前,请务必阅读本手册。 man pg_createcluster
。
sudo pg_createcluster 9.1 <think up a name>
现在你应该可以启动postgresql sudo service postgresql start
修改强>
如果pg_config仍然列出了错误的版本,那么...这可能是因为系统上仍然留有9.3的残余。这可能不是问题。为了允许多个版本彼此并行运行,pg_config是一个包装脚本,它搜索/ usr / lib / postgresql / * / bin / pg_config的最新版本(最高版本)。所以你所看到的是运行/usr/lib/postgresql/9.3/bin/pg_config
的结果。如果从系统中完全清除了9.3,则/usr/lib/postgresql/9.3应该已经消失。
如果要查看9.1的配置,请尝试运行:
/usr/lib/postgresql/9.1/bin/pg_config
。
启动服务器的包装器脚本将使用/ etc / postgresql的文件结构并使用适当的版本。所以/etc/postgresql/9.1/main将启动版本为9.1。