zoukankan      html  css  js  c++  java
  • ArcGIS10.2导入数据到PostgreSQL

      由于最近项目需要,需要把地理数据库由Oracle更换为PostgreSQL数据库,特此把遇到的一些坑记录下来。

      因为ArcGIS版本采用的10.2版本,PostgreSQL版本只能采用三个版本PostgreSQL 9.0.5 (64-bit),PostgreSQL 9.1.3 (64-bit),PostgreSQL 9.2.2 (64-bit),PostGIS版本采用 1.5.1 或者2.0版本。如果是PostgreSQL更高版本会连不上ArcGIS。

            PostgreSQL 9.1.3 (64-bit)下载地址 链接:https://pan.baidu.com/s/1As18TCFwgpLytEGWpjpt2A   提取码:1ea7  。(安装步骤不在此赘述)

      安装好PostgreSQL数据库后打开pdAdmin,创建数据库,在模板中选择templat_postgis-20模板,这是因为在安装PostGIS的时候回把改模板自动创建,引用改模板,可以把PostGIS插件直接添加到我们创建的数据库之中。

                  

      创建好数据库之后,完成连接数据库最重要的一步。

      将ArcGIS安装目录下(desktop10.2/databasesupport/postgresql/9.1/windows64)的st_geometry.dll拷贝至postgresql的安装目录(如:D:Program FilesPostgreSQL9.1lib)下。(这一步是为了postgis支持st_geometry类型)

           将PostgreSQL9.1in下的libeay32.dll、libiconv-2.dll、libintl-8.dll、libpq.dll、ssleay32.dll这几个dll拷贝至arcgis安装目录D:Program Files (x86)ArcGISDesktop10.2in下,但是这里有个坑,因为desktop是32位的,所以这里只能拷贝32位的dll,否则desktop一直无法连接postgresql,所以这里需要下载32位的这几个dll(或者下载32位的postgresql安装包,安装后,将dll拷贝出来,注意安装包版本要对应);

      将PostgreSQL9.1in下的libeay32.dll、libiconv-2.dll、libintl-8.dll、libpq.dll、ssleay32.dll这几个dll拷贝至arcgis server安装目录D:Program Files (x86)ArcGISServerin下,注意这里了,因为server是64位,所以这里又需要拷贝64位的dll,否则数据库无法发布服务,无法注册数据库。

      打开ArcMap数据库连接,选择PostgreSQL数据库,登陆,这个时候数据库应该需要采用企业地理数据库。右键启用企业地理数据库或者在工具栏中选择地理数据库管理---创建企业地理数据库。 (如果端口号不是默认5432,输入localhost,端口号),要不然创建失败。

                         

      启用企业版地理数据库之后可以创建要素数据集。

      完成后在postgresql中给sde用户赋予空间数据处理和使用的权限

      授予创建 PostGIS 几何列的权限

      如果数据库对 PostGIS 可用,则将在公共方案中创建两个表,即 geometry_columns 和 spatial_ref_sys。必须为 sde 用户和将在地理数据库中创建数据的所有用户至少授予对 geometry_columns 表的 SELECT、INSERT、UPDATE 和 DELETE 权限和对   spatial_ref_sys 表的 SELECT 权限。

      GRANT select, insert, update, delete ON TABLE public.geometry_columns TO <user_name>;

      GRANT select ON TABLE public.spatial_ref_sys TO <user_name>;

      导入数据  至此大功完成。

        

     

  • 相关阅读:
    笔试复习题《三》
    笔试复习题《二》
    《数据结构(C#语言描述)》
    设计模式《一》
    笔试复习题《一》之常用的排序算法
    序列模型(1)----简单介绍
    梯度消失、爆炸原因及其解决方法
    算法66------计算各个位数不同的数字个数【动态规划】
    TensorFlow实战学习笔记(14)------VGGNet
    TensorFlow技术解析与实战学习笔记(13)------Mnist识别和卷积神经网络AlexNet
  • 原文地址:https://www.cnblogs.com/lhgis/p/9791394.html
Copyright © 2011-2022 走看看