使用Homebrew安装旧版本的PostgreSQL和PostGIS

问题:不经考虑地运行brew reinstall postgresql导致它出现故障。

最初は使用していたのはPostgreSQL 9.5で、psqlが認識されなくなったので、brew reinstall postgresqlを実行しました。しかし、結果として9.6がインストールされてしまい、pg_upgradeの処理が必要になりました。しかし、再インストールしたので9.5が存在せず、面倒くさい状態になってしまいました。再び9.5を使用したいです。

成功安装了9.5版本。但postgis出了问题…

使用brew安装postgresql95后成功安装了9.5版本,但是postgis没有安装。
然而,当我尝试使用brew install postgis安装时,系统提示存在依赖关系,需要强制安装9.6版本的postgresql。

解决:检出旧版本并安装。

参考了使用Homebrew安装旧版本的方法(由于brew versions无法使用),我决定使用旧版本。

另外,我认为CD目录可能根据Homebrew的安装位置而有所不同,请根据实际情况进行相应更改。

前提 tí) – prerequisite

让我们先停止和清除所有相关的事物!鉴于以下的指令可能包含一些不必要的内容,请适时执行(虽然我认为应该没有问题,但请自行承担责任)。

brew services stop postgresql
brew services stop postgresql95
brew uninstall postgresql
brew uninstall postgis
brew uninstall postgresql95

PostgreSQL 是一种关系型数据库管理系统。

我将执行以下操作。

cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula
git log postgresql.rb

然后,

commit db96a14dde07fdd4600d2a8cc3d4a917806d3228
Author: BrewTestBot <brew-test-bot@googlegroups.com>
Date:   Wed Nov 2 08:29:01 2016 +0000

    postgresql: update 9.5.5 bottle.

因为找到了这个提交,所以我进行了checkout。

git checkout db96a14dde07fdd4600d2a8cc3d4a917806d3228 postgresql.rb

PostGIS 是一个用于地理信息系统(GIS)的开源软件。

由于最新版本的PostGIS与PostgreSQL 9.6兼容,因此需要将PostGIS进行更新。在PostgreSQL 9.5中,使用“create extension postgis;”会出现错误。

git log postgis.rb

然后,这边也是同样的情况。

commit a1f02e19405897966e7998f917f7c8ab14e6732e
Author: BrewTestBot <brew-test-bot@googlegroups.com>
Date:   Wed Oct 12 23:44:00 2016 +0100

    postgis: update 2.3.0 bottle.

找到了该提交,所以要进行checkout。

git checkout a1f02e19405897966e7998f917f7c8ab14e6732e postgis.rb

执行安装

brew install postgis

通过这个命令,将安装PostgreSQL 9.5和PostGIS 2.3。

然后,我将在psql中确认是否可以使用posgis。
如果你是在做Rails项目,你可以在项目目录中使用bin/rails dbconsole来简化操作。
接下来,执行以下命令以确认是否存在postgis。
psql
select * from pg_available_extensions;

如果有的话,我们要让它可以使用。

create extension postgis;

这就是以上的内容。

印象

现在这样有点麻烦,所以我想尽快在Docker上运行PostgreSQL…

bannerAds