我已经使用以下方法在 macOS 13.5.2 (Apple M2) 上安装了 postgresql 13 和 postgis:
brew update
brew install postgresql@13
brew services start postgresql@13
brew install postgis
但是,当我尝试使用 pgAdmin4 从 .sql 文件恢复数据库时,我遇到了问题。我得到了这个日志:
pg_restore: error: could not execute query: ERROR: could not open extension control file "/opt/homebrew/opt/postgresql@13/share/postgresql@13/extension/postgis.control": No such file or directory
另外,当通过
psql -U postgres
输入 psql 终端并尝试执行 create extension postgis;
时,我得到:
ERROR: could not open extension control file "/opt/homebrew/opt/postgresql@13/share/postgresql@13/extension/postgis.control": No such file or directory
更多信息:
使用时:
which psql
,我得到:
/opt/homebrew/opt/postgresql@13/bin/psql
使用时:
which pg_config
,我得到:
/opt/homebrew/opt/postgresql@13/bin/pg_config
使用时:
brew info postgis
,我得到:
==> postgis: stable 3.3.4 (bottled), HEAD
Adds support for geographic objects to PostgreSQL
https://postgis.net/
/opt/homebrew/Cellar/postgis/3.3.4_1 (725 files, 46.2MB) *
brew info postgresql@13
,我得到:==> postgresql@13: stable 13.12 (bottled) [keg-only]
Object-relational database system
https://www.postgresql.org/
/opt/homebrew/Cellar/postgresql@13/13.12 (3,244 files, 43MB)
Poured from bottle using the formulae.brew.sh API on 2023-08-29 at 10:13:22
有人可以建议我如何解决这个问题吗?
当我尝试创建 postgis 扩展并使用 Postgresql@15 和 [email protected]_1 时,我遇到了类似的问题,结果发现这是版本问题。
我还安装了 Postgresql@14,所以我必须停止当前的 postgresql@15 服务
brew services stop postgresql@15
并使用brew服务启动postgresql@14
brew services start postgresql@14
最终创建/使用 postgis 扩展没有遇到该错误。