What
電腦A上裝數據庫PostgreSQL
電腦B通過ArcGIS遠程訪問電腦A數據庫
How
電腦A(Ubuntu/Linux服務器端)
Linux下PostgreSQL安裝配置
安裝postgresql
sudo apt-get install postgresql修改PostgreSQL數據庫的默認用戶postgres的密碼
sudo -u postgres psql (啓動psql)
postgres=# ALTER USER postgres WITH PASSWORD ‘yourpassword’; (修改登錄密碼,成功會有ALTER ROLE提示)
postgres=#\q (退出psql)修改PostgreSQL配置文件實現遠程訪問
① sudo gedit /etc/postgresql/9.3/main/postgresql.conf
#listen_addresses = ‘localhost’改爲 listen_addresses = ‘*’(監聽所有地址訪問)
#password_encryption = on改爲password_encryption = on (啓用密碼驗證)
② sudo gedit /etc/postgresql/9.3/main/pg_hba.conf
末尾加上下面配置
# to allow your client visiting postgresql server
host all all 0.0.0.0 0.0.0.0 md5重啓PostgreSQL
sudo /etc/init.d/postgresql restart安裝PostgreSQL數據庫pgAdmin3客戶端管理程序
新建服務器登記,導入數據。。balabala。。。
電腦B(ArcGIS+PostgreSQL客戶端)
第一坑:位數一致
要通過ArcGIS訪問遠程PostgreSQL,需要在本臺機器上安裝PostgreSQL客戶端,並且兩者應都是32位或者都是64位,否則會報錯。(服務器端PostgreSQL與此無關)第二坑 動態鏈接庫需要複製拷貝
將postgresql下的Libpq.dll、Libiconv-2.dll Libeay32.dll Libintl-8.dll Ssleay32.dll拷貝到desktop的bin目錄下
將ArcGIS/Desktop10.2/DatabaseSupport/PostgreSQL選擇對應版本的st_geometry.dll拷貝到postgresql的lib目錄下