如何安装旧版本的postgresql和postgis?

时间:2014-08-06 15:11:30

标签: postgresql postgis

我是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

1 个答案:

答案 0 :(得分:3)

好。首先,将多个版本的postgresql并排运行是完全可以的。您可以在一个盒子上拥有多个群集,每个群集可以运行不同的版本。 debian pacakges的设计非常好,可以轻松完成。

但是,既然你已经表明你是linux / postgresql的新手,那么最好从你的系统中完全清除9.3以避免令人沮丧的打嗝,这将花费你很长时间来计算进行。

要做到这一点,你需要:

  1. 从dpkg
  2. 清除所有postgresql 9.3软件包
  3. 手动删除9.3群集的任何9.3数据和配置
  4. 确保您已创建9.1群集
  5. 第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。