在不同服务器上安装 PostgreSQL 和 ArcSDE
如果在与 ArcSDE 分离的计算机上安装 PostgreSQL,则必须将 st_geometry 共享库文件(下表中列出的)复制到 PostgreSQL 服务器上的 PostgreSQL lib 目录。如果要使用 ST_Raster 类型,则还必须将 st_raster 共享库文件复制到 PostgreSQL lib 目录。有关说明,请参阅在远程 PostgreSQL 数据库中安装 ST_Raster 类型。
库名称 |
与 OS 相关的文件名称 |
---|---|
st_geometry |
st_geometry.dll (Windows) st_geometry.so (Linux) |
st_raster |
libst_raster_pg.dll (Windows) libst_raster_pg.so (Linux) |
如果要在 Linux 上将 st_geometry.so 和 libst_raster_pg.so 复制到 PostgreSQL usr/lib/pgsql(32 位)或 usr/lilb64/pgsql(64 位)目录,则必须以超级用户身份登录,因为此目录归超级用户所有。
在 Windows 服务器上,将 st_geometry.dll 和 libst_raster_pg.dll 文件复制到 %PostgreSQL%\lib 目录。
同样,在 Windows 服务器上,如果执行 sdesetup 命令而不是运行“安装后配置”向导来创建地理数据库资料档案库,则还必须从 PostgreSQL lib 目录将下列库复制到安装 ArcSDE 的服务器上的 %SDEHOME%\bin 下,以便 ST_Geometry 类型可以访问这些库:
- comerr32.dll
- gssapi32.dll
- k5sprt32.dll
- krb5_32.dll
- libeay32.dll
- libiconv2.dll
- libintl3.dll
- libpq.dll
- ssleay32.dll
对于 Linux,必须从 PostgreSQL lib 目录将 postgresql-libs-8.3.8-1PGDG.rhel15.i686.rpm 复制到 ArcSDE 服务器上的 $SDEHOME 目录,或使用 FTP 将 postgresql-libs-8.3.8-1PGDG.rhel15.i686.rpm 从 PostgreSQL lib 目录传送到 ArcSDE 服务器上的 $SDEHOME 目录。必须在将 rpm 放置到 Linux 服务器后,运行 rpm。
PostgreSQL 数据库群集与 ArcSDE 位于不同服务器上时建立地理数据库的具体步骤因所使用的服务器操作系统的不同而不同。本主题中介绍的步骤是常规的高度概括性说明。有关所用操作系统组合的详细说明,请参阅以下主题之一:
- 在一台服务器上安装 ArcSDE。但请勿继续执行安装后配置。
- 在另一台服务器上安装 PostgreSQL DBMS。
- 从 SDEHOME 将 st_geometry 和 st_raster(可选)库文件复制到 PostgreSQL 服务器上的 PostgreSQL 安装目录,或使用 FTP 将 st_geometry 和 st_raster(可选)库文件从 SDEHOME 传送到 PostgreSQL 服务器上的 PostgreSQL 安装目录。
- 如果要在 Windows 上运行 sdesetup,则从 PostgreSQL lib 目录将库复制到 SDEHOME 中的 bin 目录,或使用 FTP 将库从 PostgreSQL lib 目录传送到 SDEHOME 中的 bin 目录。
- 如果要在 Linux 服务器上安装 ArcSDE,则使用 FTP 将 postgresql-libs-8.3.8-1PGDG.rhel15.rpm 从 PostgreSQL lib 目录传送到 ArcSDE 服务器上的 SDEHOME 目录。
- 必须配置 PostgreSQL 实例以接受运行 ArcSDE 的计算机的连接。为此,请更改 pg_hba.conf 文件。有关详细信息,请参阅配置 Linux 上的 PostgreSQL 数据库群集以接受客户端连接或配置 Windows 上的 PostgreSQL 数据库群集以接受客户端连接。
- 如果计划使用 ArcSDE 服务,且已将 ArcSDE 安装在 Windows 服务器上,请参阅创建远程 Windows 服务器中的 ArcSDE 服务。