本文讲述如何在 Amazon RDS for PostgreSQL 中创建地理数据库(Geodatabase),并用于 ArcGIS Desktop 和 ArcGIS Server 的后续使用。

环境:

  • 客户端: ArcGIS Desktop 10.3, ArcGIS Desktop 10.5

  • 服务端:ArcGIS Server 10.3 on Linux

  • 数据库:Amazon RDS for PostgreSQL 9.3.14

1. 通过 Amazon RDS 控制台创建 PostgreSQL 数据库实例。

2. 从 SQL 客户端连接到 PostgreSQL RDS 数据库实例。以主用户身份进行连接。

3. 创建一个数据库,作为地理数据库。

CREATE DATABASE spatial;

4. 连接到新建的数据

\c spatial

5. 将 PostGIS 扩展模块加载到已创建数据库的公共方案。

CREATE EXTENSION postgis SCHEMA public;

6. 创建 sde 登录角色。为 sde 登录账户授予 rds_superuser 角色,以使其启用自身的地理数据库功能。

CREATE ROLE sde WITH PASSWORD 'MeyeP@$$w0rd' LOGIN;
GRANT rds_superuser TO sde;

7. 在所创建的数据库中创建名为 sde 的方案,并使 sde 登录帐户成为 sde 方案的所有者。

CREATE SCHEMA sde;
ALTER SCHEMA sde OWNER TO sde;

注: 用户和方案名称需要全部使用小写字符;地理数据库不支持混合字符和大写字符的名称。

8. 更改权限并设置数据库的搜索路径。

ALTER DATABASE spatial SET search_path = "$user", public, sde;
GRANT ALL ON DATABASE spatial TO public;
GRANT ALL ON DATABASE spatial TO sde;

9. 在 ArcMap 或 ArcCatalog中创建从 ArcGIS 到数据库的数据库连接。

pic1

10. 运行启用企业级地理数据库地理处理工具(Enable Enterprise Geodatabase)以在数据库中创建地理数据库。

pic2

注: 不能使用创建企业级地理数据库地理处理工具或脚本在 PostgreSQL RDS 中创建 sde 用户和地理数据库。

我在实际操作时,使用Desktop 10.3的客户端,会遇到以下错误。原因未知,可能是10.3版本的Bug?

Validated authorization file.
The ArcSDE administrator user needs additional privileges to install or upgrade the ArcSDE geodatabase.To create a geodatabase in Postgresql, Arcsde admin user must have super user priviliges.

User does not have required privileges for geodatabase setup.
Failed to execute (EnableEnterpriseGeodatabase).

使用Desktop 10.5的客户端能够正常启用Geodatabase。

11. 使用 SQL 创建登录角色和方案(名称相同)以将数据加载至地理数据库。

CREATE ROLE dataloader WITH PASSWORD 'dkey2DL' LOGIN;
CREATE SCHEMA dataloader;
ALTER SCHEMA dataloader OWNER TO dataloader;

注: 用户和方案名称需要全部使用小写字符;地理数据库不支持混合字符和大写字符的名称。

12. 授予此登录帐户 sde 方案的使用权限,并授予 sde 登录帐户新方案的使用权限。

GRANT USAGE ON SCHEMA sde TO dataloader;
GRANT USAGE ON SCHEMA dataloader TO sde;

13. 在 ArcMap 或 ArcCatalog中创建从 ArcGIS 到数据库的数据库连接,连接形式为您所创建的用于加载数据的登录帐户。

pic3

14. 使用此新数据库连接文件将地理数据库注册到 ArcGIS Server 实例。

pic4

以上步骤完成之后,就可以使用dataloader用户所创建的数据库连接来使用Geodatabase了。

最后附上 ArcGIS 官方文档

Good Luck!

本文链接: https://xzdbd.com/blog/setup-geodatabase-on-awd-rds-postgresql参与评论»

–EOF–