启用只使用PostGIS的ArcSDE Geodatabase
PostGIS在开源GIS界十分受欢迎。ArcGIS的软件对其支持,除了支持读写PostGIS空间数据库之外,同时也支持在PostGIS的基础上应用ArcSDE Geodatabase数据模型。
在使用ArcMap或者ArcGIS Pro创建Postgres 数据库 SDE Geodatabase的时候,正常的步骤是要求新把st_geometry类库拷贝到Postgres数据库的lib目录下的,因为ArcGIS默认是采用ESRI 的st_geometry 存储类型,而非postgis存储类型。假如我们需要在只使用postgis的Postgres数据库中使用SDE Geodatabase数据模型,则不能使用原来的CreateEnterpriseGeodatabase工具来创建空间数据库。正确的步骤如下:
1、需要在Postgres中新建一个名字叫 rds_superuser 的角色,该角色不需要设置特别的权限。
CREATE ROLE rds_superuser;
2、创建名字为sde的登录账户,并赋予为superuser权限。
CREATE ROLE sde WITH
LOGIN
SUPERUSER;
3、把sde账户添加到 rds_superuser 角色。
GRANT sde TO rds_superuser;
4、在需要启用SDE功能的数据库上创建名字为sde的方案。
5、在需要启用SDE功能的数据库上创建Postgis扩展。
CREATE EXTENSION postgis;
6、使用ArcMap或者ArcGIS Pro的Enable Enterprise Geodatabase工具启用SDE地理数据模型。