可从 ArcGIS 客户端连接至 PostgreSQL。为此,请确保已将 PostgreSQL 配置为接受来自 ArcGIS 客户端计算机的连接并创建 ArcGIS 数据库连接。
要将已发布服务中的 PostgreSQL 数据用于 ArcGIS Server,请将数据库或地理数据库注册到该站点。
从 ArcMap 进行连接
ArcGIS Desktop 随附 PostgreSQL 客户端文件。要从 ArcMap 进行连接,请将数据库配置为接受连接,然后在 ArcMap 或 ArcCatalog 中创建来自目录树的连接。
配置数据库以允许连接
更改 PostgreSQL pg_hba.conf 文件并确保必要的登录帐户或组角色在数据库中具有 CONNECT 权限。
- 在数据库服务器上更改 PostgreSQL pg_hba.conf 文件使之接受来自 ArcGIS 客户端计算机的连接。
- 重新启动 PostgreSQL 或通过运行 pg_ctl reload 强制 postmaster 重新加载 pg_hba.conf 文件。
- 请确保用户拥有连接到数据库集群的权限。
默认情况下,“公共”角色具有 PostgreSQL 数据库集群的 CONNECT 权限;因此,如果撤消了“公共”角色的 CONNECT 权限,仅需要为各个登录或组角色授予 CONNECT 权限。
连接到数据库
您可以通过在 ArcMap 或 ArcCatalog 中目录树的数据库连接节点下添加数据库连接,连接到 PostgreSQL 中的数据库或地理数据库。
- 在 ArcMap 或 ArcCatalog 的目录树中,展开数据库连接,然后双击添加数据库连接。
- 从数据库平台下拉列表中选择 PostgreSQL。
- 在实例文本框中,输入安装 PostgreSQL 的服务器的数据库群集名称或 IP 地址。
例如,如果 PostgreSQL 数据库集群名为 ficus,请在实例文本框中输入 ficus。如果指定 IPV6 地址,则要用括号将地址括起来。例如,如果服务器的 IPV6 地址是 1111:aa1:0:1:f111:a222:33f3:b4bb,请在实例文本框中输入 [1111:aa1:0:1:f111:a222:33f3:b4bb]。
- 使用数据库身份验证进行连接。
- 提供用于连接的登录角色名称和密码。
- 如果不希望将登录信息保存为连接的一部分,请取消选中保存用户名和密码;这样做可帮助保持数据库的安全性。但是,如果执行此操作,则系统会在每次连接时提示您提供用户名和密码。另请注意,对于为 ArcGIS 服务提供数据库或地理数据库访问的连接文件,或希望使用目录搜索找到通过此连接文件访问的数据,都必须选中保存用户名和密码。
- 输入或选择想要连接到的 PostgreSQL 数据库集群中的数据库的名称。
在以下示例中,user1 正连接到 floe PostgreSQL 数据库集群上的数据库 tundra:
- 单击确定进行连接。
文件的创建位置为 \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog。
可以将连接移动到另一位置;只需确保需要建立连接的用户和应用程序有权读取放置连接文件的目录。
如果需要将此连接文件中的数据用作服务(如地理处理和地理编码服务)源,则可能需要将连接文件置于网络上的某个共享位置。有关共享连接文件的详细信息,请参阅使数据可供 ArcGIS Server 访问。
从 ArcGIS Server 连接
ArcGIS Server 包括 PostgreSQL 客户端文件;因此,您无需下载和复制 PostgreSQL 客户端文件进行连接。
从其他客户端进行连接时,请确保更改 PostgreSQL pg_hba.conf 文件并确保必要登录角色或组角色具有数据库的 CONNECT 权限。
如果希望发布到 ArcGIS Server 的服务使用 PostgreSQL 中数据库或地理数据库的数据,则须将数据库注册到 ArcGIS Server 站点。 对于 PostgreSQL 中的地理数据库,您具有两个注册选项。有关注册选项和含注册数据库说明的主题链接的信息,请参阅关于将您的数据注册到 ArcGIS Server。