ArcGIS 支持Oracle、DB2、PostgreSQL、SQLite關系型數據庫升級為企業地理數據,Oracle太龐大,SQLite太小,DB2多在IBM上用,只有PostgreSQL最適合,它能與MySQL媲美。關於ArcGIS搭配PostgreSQL的教程網上很多,但大多講得不清楚,不能解決問題,通過實測后,寫下本文供大家參考。
版本選擇
目前PostgreSQL最新版本是12,但ArcGIS 10.2不支持,可惜了;不要冒險嘗試在ArcGIS 10.2環境下配置PostgreSQL 12,即使成功了也可能帶來奇怪的問題;如果非得使用PostgreSQL 12,最好升級一下ArcGIS的版本。建議使用的版本如下:
(1)ArcGIS Desktop 10.2.2:只能32位,因為沒有64位;其他10.x版或ArcGIS Server版安裝配置方式類似;
下載地址:https://pan.baidu.com/s/1Eh_GSi0Gz9kC2X0AgR5QTg 密碼:9x29
(2)PostgreSQL 9.2.24-1: 必須64位,因為ArcGIS Desktop10.2只支持64位的PostgreSQL,可在ArcGIS Desktop安裝目錄DatabaseSupport文件夾下查看支持的數據庫及版本。
下載地址:https://download.csdn.net/download/xiuoxiuo/10622862
(3)PostGIS2.1.8:必須64位,可通過 Stack Builder或官方安裝包安裝(我的Stack Builder沒有這個插件)
下載地址:http://download.osgeo.org/postgis/windows/
(4)ArcSDE for PostgreSQL不必再安裝。
軟件安裝
安裝時注意以下問題:
(1)ArcGIS Desktop因為是32位,在64位操作系統上,默認為安裝在Program Files (x86)下面,這樣Desktop使用不影響,但配置連接SDE會報錯"文件路徑不存在或太長(> 512 字符),或有無效字符。",所以必須安裝在非Program Files (x86)目錄下,路徑可以帶空格;
(2)ArcGIS Desktop10.2和PostgreSQL9.2安裝順序沒有關系,PostGIS只能在PostgreSQL之后;
(3)PostgreSQL安裝后,記住管理員密碼,后期一直會使用。
文件替換
這是本教程的關鍵:
(1)將D:\Program Files\ArcGIS\Desktop10.2\DatabaseSupport\PostgreSQL\9.2\Windows64 目錄下的st_geometry.dll復制到C:\Program Files\PostgreSQL\9.2\lib下,只為ESRI只提供了64位的dll,所以必須安裝64位的PostgreSQL;
(2)將C:\Program Files\PostgreSQL\9.2\bin下libeay32.dll、libiconv-2.dll、libintl.dll、libpq.dll、ssleay32.dll這五個dll拷到D:\Program Files\ArcGIS\Desktop10.2\bin目錄。由於PostgreSQL64位的,而ArcGIS是32位,所以不能直接拷。為此,提供了PostgreSQL32位的dll:
https://download.csdn.net/download/adkiidgtfk926/11949118
配置連接
使用ArcGIS工具箱創建企業地理數據庫,參數如下:
如果是遠程數據庫,請修改PostgreSql配置文件,方法自行百度;
順手提供ecp文件:
https://download.csdn.net/download/adkiidgtfk926/11949163
創建成功后才能連接。
連接成功,收工。