是否有在 CentOS 8.1 上全新安装的 PostgreSQL 上安装 PostGIS 3.0.0 的端到端指南?
我有一个带有这一行的 .sql 文件:
CREATE EXTENSION postgis;
我以安装后创建的 postgres 数据库用户身份登录:pgdev
然后我用来创建数据库:db_pgdev
我想要安装 PostGIS 的位置,
执行时出现此错误:CREATE EXTENSION postgis
psql:./install-postgis.sql:4: ERROR: could not open extension control file "/usr/pgsql-12/share/extension/postgis.control": No such file or directory
当我检查时确实没有这样的文件:
这些是唯一的文件: /usr/pgsql-12/share/extension/
plpgsql--1.0.sql
plpgsql.control
plpgsql--unpackaged--1.0.sql
目录:
/usr/pgsql-12/share/extension/
归操作系统用户所有root
。
sql>select version();`
PostgreSQL 12.2 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.3.1 20190507 (Red Hat 8.3.1-4), 64-bit
安装的操作系统是:CentOS Linux 版本 8.1.1911(核心)
(不知道为什么它说:Red Hat 8.3.1-4 in: select version();
)
在 PostGIS 站点上,没有安装任何类似dnf install <pkg>
.
我只是从 SQL 语句开始以启用 PostGIS,就好像它已经存在并且只需要创建一个扩展。
那里缺少说明吗?或者之前需要做的事情CREATE EXTENSION postgis
?
当我运行时:
#dnf install postgis30_12
我收到此错误:
Error: Problem: cannot install the best candidate for the job
- nothing provides hdf5 needed by postgis30_12-3.0.1-2.rhel8.x86_64
- nothing provides xerces-c needed by postgis30_12-3.0.1-2.rhel8.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) –
如果找不到最合适的依赖项,这似乎不稳定(或正确打包)无法安装。
我对这条路没什么信心,肯定少了点什么。
在我运行dnf
命令之前,我已经安装了最新的 pgdg-redhat-repo-latest:
https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm