基于PostgreSQL创建企业级地理数据库(ArcGIS Pro)

1安装准备

1.1 ArcGIS平台

1.2数据库

1.3操作系统

2 PostgreSQL数据库安装和配置

2.1PostgreSQL数据库安装步骤

2.2PostgreSQL数据库配置

3 创建空间数据库(SDE)

4 常见问题


1安装准备

1.1 ArcGIS平台

ArcGIS Pro 3.0以及ArcGIS Enterprise 10.9.1

1.2数据库

该链接中是ArcGIS Pro 3.0支持的PostgreSQL版本及相关要求:适用于 PostgreSQL 的 ArcGIS 11.0 和 ArcGIS Pro 3.0 要求 适用于—ArcGIS Enterprise | ArcGIS Enterprise 文档

本文将采用postgresql-12.1-1-windows-x64作为示例。

1.3操作系统

与ArcGIS Pro相同的系统要求:ArcGIS Pro 3.0 系统要求—ArcGIS Pro | 文档

2 PostgreSQL数据库安装和配置

2.1PostgreSQL数据库安装步骤


双击打开安装程序,选下一步,设置安装路径为:C:\PostgreSQL\12


保持默认设置,选下一步,设置数据存放路径:C:\PostgreSQL\12\data

 

建数据库超级管理员,超级管理员用户名为postgres,由PostgreSQL提供且无法更改。这里需要自行设置密码:


设置监听服务端口为5432:


设置本地化:

接下来选择下一步,等待安装完成,并取消stack builder的安装向导即可。

2.2 PostgreSQL数据库配置

2.2.1配置几何动态连接库

必须将 st_geometry.dll 文件放在PostgreSQL\lib 目录下,然后才能创建地理数据库。可从 My Esri 或者从 ArcMap 或 ArcGIS Server 安装程序获取 st_geometry.dll 文件。

例如:在ArcMap10.8.2的安装目录(…\Program Files (x86)\ArcGIS\Desktop10.8\DatabaseSupport\PostgreSQL\12\Windows64)下找到适合postgresql 12的st_geometry.dll文件,如下图:

ArcGIS Server的dll文件在这个路径下:

C:\ProgramFiles\ArcGIS\Server\DatabaseSupport\PostgreSQL\12\Windows64

将st_geometry.dll(以及pgsqlengine.dll)拷贝到PostgreSQL的lib目录下,如下图:

 

2.2.2配置PostgreSQL远程连接设置
通过修改pg_hba.conf文件,让PostgreSQL接受远程连接,pg_hba.conf文件在PostgreSQL的安装目录下能找到:C:\PostgreSQL\12\data。

首先更改 pg_hba.conf 文件之前先创建一份副本作为备份,右键以记事本的形式打开并进入编辑,在最下方添加 host         all  all  0.0.0.0/0       trust(具体远程访问参数控制可参考ArcMap帮助中的“将数据库集群配置为接受连接”章节):


保存并关闭pg_hba.conf 文件,然后打开服务,重新启动PostgreSQL。

2.2.3配置PostgreSQL监听端口

通过修改postgresql.conf文件,让PostgreSQL监听所有端口,postgresql.conf文件在PostgreSQL的安装目录下能找到:C:\PostgreSQL\12\data。


右键以记事本的形式打开并进入编辑,将listen_addresses参数修改为’*’,如下图:

保存并关闭 postgresql.conf 文件,然后重新启动PostgreSQL。

至此完成PostgreSQL数据库的安装和配置。

3 创建空间数据库(SDE)

在ArcGIS Pro的数据管理工具箱中找到创建企业级地理数据库工具,数据库平台选择PostgreSQL,实例输入PostgreSQL所安装的机器的IP及端口,并以逗号隔开,例如:192.168.1.90,5432 ,数据库输入sde,输入刚才设置的数据库管理员密码,地理数据库管理员密码输入sde,授权文件选择ArcGIS Server的授权ecp文件,空间类型选择ST_Geometry,然后点击确定进行创建。

(本机的IP地址可以通过cmd,输入ipconfig,回车查询,其中的IPv4的地址即为这里需要填写的)
完成SDE创建后,可启用连接,在目录窗格中对数据库击右键选择新数据库连接,输入刚才创建时的参数:

 

点击确定后,即可对已创建的SDE进行操作。

4 常见问题

1.在安装PostgreSQL时,会报错:Problem running post-install step. Installation may not complete correctly. The database cluster initialisation failed.

这是因为C:\PostgreSQL文件夹的权限受限造成的。遇到这个报错时,我们需要先在控制面板中卸载掉刚才没有安装成功的PostgreSQL,然后手动删除C:\PostgreSQL\12路径下的所有文件。接下来,将C盘中的 PostgreSQL文件夹以及其中的12文件夹的user权限改为完全控制。最后,再尝试重新安装即可。

2.在创建企业级地理数据库时报错:

这是因为st_geometry.dll与使用的ArcGIS版本不匹配导致的。

需要特别注意:ArcGIS Pro并不提供st_geometry.dll文件。ArcGIS Pro 3.0需要使用ArcMap10.8.2安装文件路径下的st_geometry.dll;如果使用了ArcMap10.8.1的,就会报这个错误。

参考文章:

如何快速搭建基于PostgreSQL的空间数据库(SDE)_postgresql 安装sde_WanKaShing的博客-CSDN博客

文章最初发布在:

基于PostgreSQL创建企业级地理数据库 - GIS知乎-新一代GIS问答社区 (geoscene.cn)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值