林业地理信息数据管理之一

ARCGIS DESKTOP和ORACLE建立地理信息数据库

(陈家 安徽省林业调查规划院)

目前,随着林业调查类型越来越多,数据采集手段越来越丰富,林业地理信息数据也越来越复杂,于是对于林业信息数据的存放、共享、协作处理等要求越来越高,依靠过去存放在各自硬盘或者移动介质中的数据存放和处理方式已经无法使用现代林业管理的需要。

因此,建立林业地理信息数据库的目的主要是:

1、解决信息数据存放问题,采用集中式存放;

2、解决信息数据安全问题,采用用户管理,这样每次数据处理都会留有记录;

3、解决信息数据备份问题,采用冗余等方式备份数据;

4、解决信息数据协作处理问题,数个用户可以对数据进行处理,而不需要用移动介质互相拷贝;

5、解决数据共享问题,对于查询、统计和分析的用户,可以提供必要的共享权限进行只读处理;

6、解决信息数据版本问题,以林地变更为例,数据库可以很方便的存放历年数据。

之所以选择ARCGIS
DESKTOP和ORACLE是因为ARCGIS是世界上主流的地理信息软件之一,在国内的应用范围很广,如天地图系统就是用这个平台,同时软件也比较成熟,易于使用;至于ORACLE数据库,虽然ARCGIS平台内置的数据库是微软的SQL
SERVER,这两者的结合性会更好,但是考虑到未来可能的跨平台需要,那么只能在WINDOWS操作系统上使用的SQL
SERVER明显不符合要求,而能够在WINDOWS、UNIX和LINUX等多个操作系统之间迁移数据的ORACLE更加好一些。

操作环境方面,需要独立的局域网(不和互联网连接)至少要有一台服务器,一台交换机和数台计算机,服务器需要安装WINDOWS
SERVER操作系统,千万不要使用个人操作系统,IP地址设为固定,我的是192.168.1.150;交换机最好是千兆交换机;计算机可以安装WINDOWS
10等操作系统,服务器和计算机最好都是千兆网卡,用六类线和交换机连接。

ORACLE数据库软件的安装和使用,数据库软件需要安装在服务器上,推荐的版本是ORACLE
DATABASE 12C 发行版1:

如果是第一次安装的话,选择“创建和配置数据库”:

如果在服务器上安装的话,需要选择“服务器类”:

选择“单实例数据库安装”:

选择“典型安装”:

最好选择“创建新windows用户”:

选择“数据库文件位置”,要找一个容量大的硬盘分区;“全局数据库名”最好改掉,改为自己想用的;千万不要选择“创建为容器数据库”,这样会导致arcgis创建地理数据库时失败。

然后点击“下一步”,检查通过以后就可以开始安装了,安装结束以后可以在客户机浏览器中输入“https://192.168.1.150:5500/em”来验证安装是否成功,或者在客户机上安装ORACLE客户端,启动NET MANAGER来测试是否连接成功。

ORACLE客户端的安装,需要在客户机上安装ORACLE客户端软件,可以去ORACLE官网通过注册后,下载客户端,一定要用32位系统,哪怕操作系统是64位的,因为ARCGIS无法使用64位客户端连接数据库,同时,在操作系统环境变量设置中一定要把客户端路径放在第一位。

ARCGIS DESKTOP的安装网络上有很多教程,在这里就不赘述了,我使用的是10.2.2版本。

建立和使用arcgis
企业级地理数据库,我以arcmap为例,首先要创建“数据库连接”,打开“目录”工具,里面有“添加数据库连接”,添加一个新的连接:

将服务器的IP地址,服务名填入,使用最高权限sys登录。

添加完成之后进行连接,成功后就可以看见如下界面。

创建企业级地理数据库,打开“TOOLBOX”,进入“数据管理工具”,再进入“地理数据库管理”。

选择“创建企业级地理数据库”:

数据库平台选择ORACLE,实例选择在数据库安装时创建的,使用sys用户登录,地理数据库管理员可以选择默认,填入密码,表空间名称可不填,然后选择ARCGIS SERVER的授权文件即可创建。

在“目录”-“数据库连接”中添加使用sde用户登录的连接:

“升级企业级地理数据库”是将老版本的数据库升级到当前版本。

选择“启用企业级地理数据库”,这样企业级地理数据库就可以使用了,这里选择的是使用sde登录的连接。

然后可以创建相应的角色,赋予不同的权限,要使用sys登录的连接创建角色:

然后“创建数据库用户”,同样也需要使用sys登录的连接,角色可以选择之前创建的,也可以不加入任何角色:

建立好用户后,就可以使用不同的用户建立数据库连接了,而不要一直使用sde进行连接,因为权限太大,不安全。

使用“更改权限”,可以设置用户对某个数据集查看和编辑的权限:

选择企业级地理数据库里某个或者几个数据,填入用户名,视图是设置查看的权限,编辑是设置修改的权利,AS_IS是维持不变,GRANT是可以,REVOKE是不可以。

也可以将数据导入数据库后,在数据库连接中找到点击右键-“管理”,里面有个“权限”,也可以设置。

可以既对用户,也可以对角色进行设置,有选择、插入、更新和删除几个选项。

可以使用“注册到地理数据库”工具,将数据集提前注册到数据库中,这样在发布数据的时候就方便一些,这在后面我会说到。

到以上步骤为止,单位的企业级数据库就已经建好,并且可以使用了,下面就是要把数据导入。

我们以每年林地变更调查产生的林地“一张图”数据为例,首先,我建议将数据的空间和属性进行分离,空间数据里没有属性,属性以属性表的形式存放,建立索引,两者之间使用“连接和关联”,这样的好处,一来数据小,加载速度快,以后发布数据做切片的话也不需要使用属性数据;二来可以加载多种数据,实现固定小班经营,可以加载林地属性、二类属性等,同样的,属性表也可以分开保存,减少出错的几率。


将现有数据整理好之后,就可以进行入库前的检查工作了,打开“TOOLBOX”,进入“数据管理工具”-“要素”-“检查几何”:

检查出错误后,进入“修复几何”进行修复:

所有问题修复完毕后,就可以进行入库处理了,使用sde登录的数据库连接,点击右键-“导入”-“要素类”,属性表使用“导入”-“表”:

导入成功后,打开数据库连接就可以看见新建的数据表了:

最好再导入一个有面转点的图层,点图层用于存放属性,这是为了发布数据的时候形成标注使用的。

需要注意的一点是,在入库前,一定要检查ORACLE中sde表的容量,查看是否是自动增长,并且将最大容量加大,但不建议使用无限制容量。

查看和修改oracle数据库的方法是,首先打开ORACLE菜单中的SQL
DEVELOPER软件,连接上企业级地理数据库所在的SID:

在查询界面输入以下语句,然后运行语句:

在“查询结果”中可以看到最后一项,SDE_TBS就是地理数据库的表,我的已经设置为自动增长了,一般情况是“NO”:

如果没有设置为自动增长的话,需要运行如下语句,意思是将SDE设置为自动增长,并且最大容易为8G:

修改后的结果:


在导入数据库的时候,很多错误都是因为容量不够,一定要注意这点。建议使用Arcgis
Pro进行处理,这个软件能力比较强,使用也很容易。

最后,企业级地理数据库就建立好了,并且导入了数据,不同的角色或者用户,可以在不同的客户机上建立相应的数据库连接,赋予不同的权限进行数据处理、分析和管理,大大提高了数据管理水平和能力。

(如需转载,请注明出处)

1_ARCGIS DESKTOP和ORACLE建立林业地理信息数据库相关推荐

  1. MYSQL的地理信息数据库_国家基础地理信息系统数据库

    地理信息系统论坛:最专业GIS中文互动门户 国家基础地理信息系统数据库 [日期:2008-02-29] 来源:国家测绘局  作者: [字体:大 中 小] 国家基础地理信息系统是以形成数字信息服务的产业 ...

  2. oracle遍历表做查询,oracle 语句之对数据库的表名就行模糊查询,对查询结果进行遍历,依次获取每个表名结果中的每个字段(存储过程)...

    语句的执行环境是plsql的sql窗口, 语句的目的是从整个数据库中的所有表判断 不等于某个字段的记录数 . 代码如下: declare s_sql clob:=''; -- 声明一个变量,该变量用于 ...

  3. 配置ORACLE 客户端连接到数据库

    --================================= -- 配置ORACLE 客户端连接到数据库 --================================= Oracle ...

  4. linux python连接oracle数据库_Linux下通过python访问MySQL、Oracle、SQL Server数据库的方法...

    本文档主要描述了Linux下python数据库驱动的安装和配置,用来实现在Linux平台下通过python访问MySQL.Oracle.SQL Server数据库. 其中包括以下几个软件的安装及配置: ...

  5. Oracle建立全文索引详解

    Oracle建立全文索引详解 1.全文检索和普通检索的区别 不使用Oracle text功能,当然也有很多方法可以在Oracle数据库中搜索文本,比如INSTR函数和LIKE操作: SELECT *F ...

  6. 织梦php远程连接数据库,用PHP连接Oracle for NT 远程数据库

    用PHP连接Oracle for NT 远程数据库 发布时间:2016-06-17 来源: 点击: 次 我以前用php连接远程oracle8.0.5 for NT 企业版,用ODBC,oracle接口 ...

  7. oracle删除查询的数据库语句,Oracle简略的语句 查询 删除 修改(1)

    Oracle简单的语句 查询 删除 修改(1) Dual系统表介绍 数据类型: 数据是信息数字表现形式,信息的加工处理是以大量的结构化数据为载体进行的,数据库管理系统的核心是数据库,数据库的主要对象是 ...

  8. oracle包同义词报错,Oracle——04同义词与数据库链接

    1.同义词: 在分布式数据库环境中,为了识别一个数据库对象,必须规定主机名.服务器名.对象的拥有者和对象名.这无疑增加了访问者的访问难度.为了给不同的用户使用数据库对象时提供一个简单的.唯一标识数据库 ...

  9. 建立高可用性的数据库群集

    建立高可用性的数据库群集 Duwamish Online Aaron Ching 和 Steve Kirk Microsoft Developer Network 2000 年 12 月 摘要:本文探 ...

最新文章

  1. There's no Qt version assigned to this project for platform Win32/Win64
  2. SOA学习笔记(一)
  3. 云服务器怎么设置数据库文件,怎么设置云服务器数据库
  4. 模型大小 与参数量计算
  5. 完美实现SpringBoot+Angular普通登录
  6. ab st语言编程手册_木兰编程语言 0.0.14.7:功能覆盖初版用户手册;Gitee Go 流水线尝鲜...
  7. excel公式不自动计算_WPS表格仅显示公式不计算结果怎么办
  8. 阿里电商架构演变之路(二)
  9. 智慧城市的宠儿 大数据为城市建设添彩
  10. 吃着热狗就把数学整明白了?
  11. m3u8批量下载【下载器 xdown - V1.0】
  12. k近邻算法python_k-近邻算法的Python实现
  13. 你 --- 短诗四句
  14. marvin java_Java开源图像处理框架Marvin介绍
  15. 俞敏洪一分钟励志演讲稿
  16. .net笔试题(二)
  17. 小学计算机课优质课,2018年武汉市小学信息技术优质课评比
  18. 使用Openoffice实现并发多进程word文档转换预览
  19. Ania and Minimizing
  20. Flutter安卓系统把状态栏设置为透明色

热门文章

  1. Synctoy定时自动同步数据
  2. 80款FLASH小游戏合辑,附Flash播放器 | Yongd's Blognbsp;nbsp;分享网络好资源
  3. Python程序设计 作业1
  4. 每周分享五个 PyCharm 使用技巧(三)
  5. c标准时间与时间戳转换
  6. 群晖 NAS 通过 frp 实现内网穿透
  7. vsCode 打开界面报错,尝试在目标目录创建文件时发生一个错误
  8. html5如何快速选择工具,PS抠图教程!教你PHOTOSHOP中5个快速选择工具
  9. github上的优秀android开源项目 大全 真是太他妈的全了!!!!!!
  10. Benchmark Analysis 7:SPEC2006.482sphinx