我已经通过Homebrew安装了Postgresql@9.6和Postgis。然而,通过Homebrew安装Postgis会将Postgresql的最新版本安装在10作为依赖项,而将Postgresql固定在9.6.5会阻止通过Homebrew安装Postgis。
执行'CREATE EXTENSION postgis;‘返回:
ERROR: could not open extension control file "/usr/local/Cellar/postgresql@9.6/9.6.5/share/postgresql@9.6/extension/postgis.control": No such file or directory
我还尝试卸载Postgresql (版本10),并编辑Postgis公式,使其依赖Postgres@9.6而不是Postgresql。
这与How to install Postgis to a Keg installation of Postgres@9.5 using Homebrew?类似,但使用的是后来的keg公式
发布于 2018-01-04 21:28:41
经过多次组合,我终于做到了。简而言之,解决方案是安装原始软件包postgres的旧版本,切换到它,然后安装旧版本的postgis。
安装postgres
1/安装当前版本的postgres (10.1 )
brew install postgres2/使用旧的公式安装旧版本的postgres。可以在磁带存储库(/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/)上使用github或git log找到正确的链接。
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/d014fa223f77bee4b4097c5e80faa0954e28182f/Formula/postgresql.rb这将安装版本9.6.5 ( 10.x系列之前的最后一个版本)。
3/切换到它,因此链接默认为postgres 9.6
brew switch postgres 9.6.5安装postgis
4/安装旧版本的postgis (2.3)。这是使用相同的sha版本的公式,所以一切都是正确链接的(使用当前的postgis将期望postgresql 10,因此在初始化扩展时将导致版本不匹配)。
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/d014fa223f77bee4b4097c5e80faa0954e28182f/Formula/postgis.rb使用它们
5/如果需要,初始化DB
initdb /usr/local/var/postgres6/创建和使用数据库
createdb mydb
psql mydb
mydb=# CREATE EXTENSION postgis;发布于 2017-11-03 22:46:47
通过安装PostgreSQL包管理器PEX,我可以为PostgreSQL9.6的keg版本安装Postgis并使用CREATE EXTENSION postgis;
这不是一个自制的解决方案,但经过大量的搜索,它最终允许我使用Postgis。
发布于 2021-05-21 15:27:51
我遇到了类似的问题,对我起作用的是遵循https://github.com/CloverHealth/homebrew-tap的说明,它在精神上类似于@Antwan的解决方案,但需要更多的清理步骤,而且它的版本也稍晚一些:postgresql9.6.10和postgis2.5。
我的步骤与CloverHealth略有不同:我的brew版本不再支持brew switch postgresql 9.6.10,我先尝试了brew link postgresql@9.6.10,然后尝试了brew link postgresql@9.6,但两个版本都提供了
Error: no such keg尝试brew search postgresql时,cloverhealth配方旁边显示了一个绿色的小复选标记,因此我尝试了brew link cloverhealth/tap/postgresql,并得到
Warning: Already linked: /usr/local/Cellar/postgresql/9.6.10所以,好吧,它已经被链接了。除此之外,我的步骤与CloverHealth页面中描述的步骤相同,现在我可以重新启动并运行了。
https://stackoverflow.com/questions/47079305
复制相似问题