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

创建成功后才能连接。

连接成功,收工。

 

ArcGIS10.2配置PostgreSQL9.2标准教程的更多相关文章

  1. SAP ABAP学习路线图--标准教程

    SAP ABAP学习路线图--标准教程 摘自:http://www.cnblogs.com/clsoho/archive/2010/07/05/1771400.html

  2. windows7配置Nginx+php+mysql教程

    windows7配置Nginx+php+mysql教程 最近在学习php,想把自己的学习经历记录下来,并写一些经验,仅供参考交流.此文适合那些刚刚接触php,想要学习并想要自己搭建Nginx+php+ ...

  3. Centos7安装并配置mysql5.6完美教程

    Centos7安装并配置mysql5.6完美教程 Centos7将默认数据库mysql替换成了Mariadb,对于我们这些还想使用mysql的开发人员来说并不是一个好消息.然而,网上关于Linux安装 ...

  4. Mac OSX操作系统安装和配置Zend Server 6教程(1)

    作为web开发人员,应该熟悉掌握各种系统下安装和配置web服务器与站点的技术. 随着越来越多的开发人员选择Zend Server服务器,慧都推出了在Mac OSX系统安装和配置Zend Server ...

  5. eclipse下配置安装ssm图文教程(web版)

    eclipse下配置安装ssm图文教程(web版) 一.安装所需jar包 1.1  mybatis安装包 可以进入GitHub的https://github.com/mybatis/mybatis-3 ...

  6. CentOS和Windows下配置MySQL远程访问的教程

    CentOS和Windows下配置MySQL远程访问的教程   一.前言 由于实验在云服务器上跑的结果不是很理想.所以,现在切换到局域网服务器.因此,需要重新配置 Windows 服务器和 CentO ...

  7. 01.1 Windows环境下JDK安装与环境变量配置详细的图文教程

    01.1 Windows环境下JDK安装与环境变量配置详细的图文教程 本节内容:JDK安装与环境变量配置 以下是详细步骤 一.准备工具: 1.JDK JDK 可以到官网下载 http://www.or ...

  8. ogre3d环境配置 SDK安装配置及简单事例教程

    ogre3d环境配置 SDK安装配置及简单事例教程 http://www.cr173.com/html/22594_1.html ogre3d环境配置 SDK安装配置及简单事例教程 http://ww ...

  9. VSCode配置c++环境简单教程

    VSCode配置c++环境简单教程 1.下载MinGW 安装有关gdb,gcc,g++的所有包 2.文件夹 打开一个文件夹 在里面随便写一个cpp 不管是VS还是VSCode,它的基本操作单位都是文件 ...

随机推荐

  1. js 回调地狱的另类解决方案尝试

    例如 通过学生获取学生所在学校信息,需要先查询学生所在班级,再通过班级查询所在学校信息.js代码类似写法如下: function getStudentSchool(id) { ajax.get(&qu ...

  2. TCP服务端

    出处: https://blog.csdn.net/DGH2430284817/article/details/86653294问题描述:       在用socket的通信中,经常会出现这种情况,客 ...

  3. java中文件复制的4种方式

    今天一个同事问我文件复制的问题,他一个100M的文件复制的指定目录下竟然成了1G多,吓我一跳,后来看了他的代码发现是自己通过字节流复制的,定义的字节数组很大,导致复制后目标文件非常大,其实就是空行等一 ...

  4. Security+学习笔记

    第二章 风险分析 风险管理 评估:确定并评估系统中存在的风险 分析:分析风险对系统产生的潜在影响 响应:规划如何响应风险的策略 缓解: 缓解风险对未来安全造成的不良影响 风险分析流程 资产确定 漏洞确 ...

  5. C++之重载覆盖和隐藏

    继承体系下同名成员函数的三种关系 重载 在同一作用域内 函数名相同,参数列表不同(分三种情况:参数个数不同,参数类型不同,参数个数和类型都不同) 返回值类型可以相同也可以不同 重写(覆盖) 在不同作用 ...

  6. java自学-数组

    1.数组是什么 前边说过java的基本数据类型,数组,就是装这些基本类型的容器.每个基本类型的变量都是单个的,数组就是这些单个元素的组合. 2.创建数组 方式一 格式: 数组存储的数据类型[] 数组名 ...

  7. 如何设计APP版本号?

    示例: 2.14.21 (主版本号.次版本号.补丁号) 我们可以这样设计,软件包的版本号以英文句号分隔的三个数字来定义,分别代表主版本号.次版本号和补丁号.如果只是修复了错误,没有添加任何功能,也不会 ...

  8. Linux gzip: stdin: not in gzip format

    在解压tar.gz文件的时候报错 tar -zxvf otp_src_18.3.tar.gz gzip: stdin: not in gzip format tar: Child returned s ...

  9. Web前端基础(12):JavaScript(六)

    1. JS中的面向对象 创建对象的几种常用方法: 1.使用Object或对象字面量创建对象 2.工厂模式创建对象 3.构造函数模式创建对象 4.原型模式创建对象 1.1 使用Object或对象字面量创 ...

  10. PlayJava Day015

    今日所学: /* 2019.08.19开始学习,此为补档. */ StringBuffer 定义: 可变字符序列 - 线程安全的 作用:基本与String相同,也是用于描述字符串 与String的区别 ...