如何降级 PostgreSQL?

san*_*eda 7 repository postgresql

在我的 ubuntu 12.04 x64 中,我安装了 PostgreSQL 8.4。它自动升级到 9.1.1。由于一些不一致,我想将其降级到8.4。如何使用终端执行此操作?

小智 5

Ubuntu 不会自动将 PostgreSQL 8.4 升级到 9.1。可能发生的情况是 9.1 现在与旧的 8.4 一起安装,并且您使用的客户端工具更喜欢连接到 9.1 实例。尝试pg_lsclusters查看在它们所在的端口上真正运行的是什么。


don*_*oey 3

我不确定降级是最好的选择。毕竟升级是有原因的。我确实理解在某些情况下升级并不明显。

如果您确实想降级,有两种选择,我强烈建议第二种选择。

手动安装早期版本的 PostgreSQL

运行以下命令(取自http://colekcolek.com/2012/02/23/downgrade-postgresql-8-2-ubuntu-11-10/):

wget http://ftp.postgresql.org/pub/source/v8.4.9/postgresql-8.4.9.tar.gz
tar zxvf postgresql-8.4.9.tar.gz
cd postgresql-8.4.9
./configure --without-readline --without-zlib
make
su
make install
Run Code Online (Sandbox Code Playgroud)

您将负责维护 postgres 安装。

使用 APT 存储库

这里有一个存储库可以帮助您。就维护而言,这绝对是更好的选择。以下是来自http://www.postgresql.org/download/linux/ubuntu/的大量引用:

PostgreSQL Apt 存储库

如果您的 Ubuntu 版本中包含的版本不是您想要的版本,您可以使用 PostgreSQL Apt 存储库。该存储库将与您的常规系统和补丁管理集成,并在 PostgreSQL 的支持生命周期内为所有受支持的 PostgreSQL 版本提供自动更新。

要使用 apt 存储库,请按照下列步骤操作:

  1. 创建文件/etc/apt/sources.list.d/pgdg.list,并为存储库添加一行deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main
  2. 导入存储库签名密钥,并更新包列表
    wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
    sudo apt-get update

有关 apt 存储库的更多信息,包括常见问题的解答,请参阅 wiki 上的 apt 页面。

还有一个 PPA,但我认为它已被弃用,取而代之的是存储库:sudo add-apt-repository ppa:pitti/postgresql。更多信息请参见同一页面

另请阅读:如何设置默认使用哪个 PostgreSQL 版本?