ArcGIS连接Postgres 数据库

此前在使用ArcGIS的过程中,一般使用文件方式对数据进行管理,后面也有使用 GeoDatabase 数据库对数据进行管理,但是这种管理方式也存在一些弊端,特别是在数据传输与共享方面,非常的不方便。 ArcGIS Spatial Database Engine(SDE)是一种空间数据引擎,通过这个中间件能够使得传统的DBMS数据库能够存储和管理空间数据。这种空间数据库的管理主要有如下优势:

  • 便于数据的传输与共享

    只要是在同一个局域网内的用户,通过对空间数据库的连接,便可以对数据进行查看、编辑,实现了数据共享

  • 便于数据的处理

    ArcGIS SDE 的这个空间扩展提供了很多的空间查询与分析的空间函数,可以使用SQL语句对数据库中的数据进行查询、处理、

    分析,大大提高了工作效率

常用的主流数据库如 Oracle , SQL server ,Postgres SQL 均可以通过SDE和ArcGIS建立联系,实现对空间数据的储存和管理,这里以Postgres数据库为例。

系统环境: windows 10

软件环境:

  • ArcGIS 10.4.1
  • Postgres 9.4

步骤

安装相关软件环境

这里的ArcGIS 和Postgres版本必须要对应,例如,我的ArcGIS 10.4版本就只能支持Postgres 9.2-9.4版本

ST_Geometry.dll拷贝到相应的数据库位置

这里ST_Geometry.dll文件位于一般位于ArcGIS Desktop\Server 的安装目录下面

C:\Program Files (x86)\ArcGIS\Desktop10.1\DatabaseSupport\PostgreSQL\Windows64

数据库的位置这里是指Postgres的安装目录

D:\Program Files\PostgreSQL\9.4\lib

ArcGIS 中创建地理数据库

工具:【Data Management Tools】->【GeoDatabase Administration】->【Create Enterprise GeoDatabase】

创建好数据库后,即可在数据库中查看,可以看到数据库中多了一个 sde的数据库,这个就是刚刚新创建的空间

连接新的空间数据库

创建完空间数据库后,还需要在ArcGIS中对空间数据进行连接,才能对空间数据库进行查看、编辑

连接数据库主要是在ArcGIS Catalog中进行 ,具体地址为:【Database Connections】->【Add Database Connections】

点击OK,即可完成连接,连接完成后,便可像处理文件夹或者本地的GeoDatabase数据库那样对数据进行处理。

常见问题

创建要素失败

postgresql中创建要素类提示

 Database user name and current user schema do not match

解决方式: 用户使用的是postgres用户来连接SDE,这样可以连接但是创建不了要素类,必须使用sde

参考文章

  1. http://blog.sina.com.cn/s/blog_54b09dc90101f3vm.html

ArcGIS连接Postgres 数据库的更多相关文章

  1. pgadmin(IDE)工具连接postgres数据库

    1. 下载软件        软件地址:http://www.pgadmin.org/download/pgagent.php   2.安装软件    安装过程:略    打开软件64位会出现  “无 ...

  2. arcgis连接Oracle数据库

    arcgis连接Oracle数据库 配置声明:本人的电脑是win10 64位,安装的Oracle是oracleR11gr2 64  arcgis版本位10.2 安装是在同一台电脑上. 一.首先是安装O ...

  3. Actix-web Rust连接Postgres数据库

    Actix-web Rust连接Postgres数据库 ​ Rust1.39支持了异步async,await,Actix-web在2.0.0-alpha支持了原生异步写法,所以本文中使用的Actix- ...

  4. 从ArcGIS连接Oracle数据库,并将Oracle数据库注册到ArcGIS Server

    环境说明 客户端机器环境: ① Win7 SP1 64位 ② ArcGIS Desktop 10.2 32位 ③ ArcGIS Server 10.2 64位 服务器环境 ① Windows Serv ...

  5. shell编程连接postgres数据库(数据备份)

    第一步:通过xshell或者其他工具连接到linux服务, 第二步:创建一个脚本:touch se.sh 第三步:输入i,代表开始输入内容 输入以下命令: 脚本如下:(sql语句可以是任何复杂的sql ...

  6. kaili 2.0 metasploit连接postgres数据库

    第一步:使用命令 db_init 初始化数据库

  7. Metasploit连接postgres数据库

    操作环境为Kali虚拟机 root@kali:~# apt-get install postgresql 启动服务 root@kali:~# service postgresql start [ ok ...

  8. kali 2.0中msf连接postgres数据库

    装好kali 2.0后直接运行msfconsole msf> db_status postgres selected, no connection 百度到的解决方法多是针对BT和kali 1.0 ...

  9. arcgis连接oracle发布服务,提示数据未注册到服务器,手动注册服务器失败

    arcgis连接oracle数据库发布服务时候,分析之后提示:数据未注册到服务器上. 手动注册之后提示:数据客户端没有正确配置.实际上数据库客户端已经安装完成也可以使用. 设置 PATH 环境变量(仅 ...

随机推荐

  1. 3.下载CentOS镜像

    下载CentOS镜像 引子: 镜像可以看成是类似ZIP的压缩文件,与rar ZIP压缩包类似,镜像文件是无法直接使用的,需要利用一些虚拟光驱工具 进行解压后才能使用 我们这里就是CentOS系统的镜像 ...

  2. mysql知识点归纳-执行计划篇

    愿历尽千帆,归来仍是少年 缘由: 优化sql,顾此记录一下,以便温习之用. 前置: sql执行过程:客户端 -> 连接器 -> 分析器 (或查询缓存 - > end) -> 优 ...

  3. JEP 尝鲜系列 3 - 使用虚线程进行同步网络 IO 的不阻塞原理

    相关 JEP: JEP 353 Reimplement the Legacy Socket API JEP 373 Reimplement the Legacy DatagramSocket API ...

  4. [Java] 静态代理 动态代理

    原理 静态代理=代理模式 动态代理=代理模式+反射 代理模式可以在不修改被代理对象的基础上,通过扩展代理类,进行一些功能的附加与增强 代理类和被代理类应该共同实现一个接口,或者是共同继承某个类 静态代 ...

  5. [Java] Spring 示例

    (一)IoC/DI 功能 配置解析:将配置文件解析为BeanDefinition结构,便于BeansFactory创建对象 对象创建:BeansFactory 根据配置文件通过反射创建对象,所有类对象 ...

  6. 桌面支持qt版本是多少检查

    桌面支持qt版本是多少 # rpm -qa |grep qt |grep 3 |sortqt3-3.3.8b-60.nd7.2.x86_64qt-4.8.6-13.nd7.3.x86_64qt5-qt ...

  7. 基于Centos 7.4 搭建ELK整合SpringBoot日志收集

    基于Centos 7.4搭建es7.12.0+logstash-7.12.0+kibana-7.12.0(ELK)整合SpringBoot日志收集 注:Skywalking和logstash可共用一个 ...

  8. Linux :忘记使用nohup该如何补救

    Linux :忘记使用nohup该如何补救 目录 Linux :忘记使用nohup该如何补救 0x00 摘要 0x01 问题描述 1.1 为何关闭进程 1.2 nohup 作用 0x02 简述 2.1 ...

  9. Linux基础服务——Bind DNS服务 Part2

    Linux基础服务--Bind DNS服务 Part2 DNS反向解析与区域传送 实验环境延续Part1的实验环境. 反向区域配置 正向解析是域名到IP地址的映射,反向解析则是IP地址到域名的解析,在 ...

  10. TVM适配NN编译Compiler缺陷

    TVM适配NN编译Compiler缺陷 内容纲要 前言 TVM针对VTA的编译流程 自定义VTA架构:TVM的缺陷与性能瓶颈 TVM缺陷与瓶颈 缺陷一:SRAM配置灵活性差 缺陷二:计算阵列配置僵硬 ...