0

我正在尝试在 AWS 上使用 Postgres-XL 部署 PostGIS 集群,为此我有下一个架构:

SO:ubuntu
1 GTM (172.31.45.190)
1 Coordinator (172.31.45.191)
2 Datanodes (172.31.45.192 and 172.31.45.193)

我的集群正在运行,但我无法让 PostGIS 工作,我尝试了安装,sudo apt-get install postgis但是当我尝试在我的 db ( CREATE EXTENSION postgis;) 中创建扩展时,我得到了下一个错误:

ERROR:  could not open extension control file "/usr/local/pgsql/share/extension/postgis.control": No such file or directory

安装的postgis.control文件apt-get在:"/usr/share/postgresql/9.5/extension/postgis.control"所以我认为这只是路径的问题,但我对那个配置有点迷茫

预先感谢您的任何帮助!

4

2 回答 2

1

如果有人在这个问题上运行,我按照以下步骤解决:

  1. 安装 Postgres-xl 和 PostGIS 依赖项进行编译(请务必在此步骤中安装包 postgresql-server-dev-9.5,否则会破坏您的 postgres-xl 安装)
  2. 构建和安装 Postgres-XL./configure -prefix=/usr/lib/postgresql/9.5
  3. 构建和安装 PostGIS
  4. 启动您的集群
于 2018-08-05T01:36:39.993 回答
0

您正在使用从 Ubuntu 存储库以外的其他地方安装的 PostgreSQL 版本(在本例中为 PostgreSQL-XL)(与此问题类似)。这/usr/local/pgsql/share$SHAREDIR为您的 PostgreSQL 安装配置的。Ubuntu for PostgreSQL 9.5 上的默认值应该是/usr/share/postgresql/9.5. 据我所知$SHAREDIR,它是在编译时配置的,不能轻易更改。

PostGIS 是针对将要使用的 PostgreSQL 版本编译的。因此,在这种情况下,Ubuntu 版本的 PostGIS 不会与您正在运行的 PostgreSQL-XL 版本兼容。

您有两种解决问题的方法:

  • 从 Ubuntu 软件存储库安装 PostgreSQL(确保先备份数据库!)并使用它而不是 PostgreSQL-XL。
  • PostGIS 手动安装到 PostgreSQL-XL 中。
于 2018-08-03T19:10:13.190 回答