【ArcGIS】Oracle RAC下创建地理数据库(Create Enterprise Geodatabase)失败的解决方法

  转载请注明原文地址:http://www.cnblogs.com/litou/p/8028843.html

 

  环境:Oracle 11g 11.2.0.1.0(双节点RAC群集),ArcGIS Desktop 10.1。

  一般在Oracle单机实例的情况下需要存储ArcGIS空间数据,第一次需要使用ArcGIS工具箱中的Create Enterprise Geodatabase工具生成SDE用户、表空间及相应的管理表,这个在Oracle单机实例情况下是没有问题的。

 

  但是在Oracle RAC群集的情况下使用该工具创建SDE相关内容时,会创建失败,具体错误原因为无法找到表空间的数据文件。这时打开Oracle控制台的表空间页面也报同样的错误。

 

  这时使用DBA权限用户登录数据库,查看数据库的表空间文件情况,由于Oracle RAC使用的是ASM存储管理,并非一般的文件存储方式,而Create Enterprise Geodatabase工具中,SDE用户的默认表空间SDE_TBS的数据文件默认是放在Oracle HOME的本地路径上,并非ASM管理的存储上,导致表空间数据文件找不到。

 

  参考《解决OracleRAC集群下创建SDE时报Stored procedures错误问题》的做法,错误是解决了,使用SDE用户存储和使用空间数据没有问题,但是其他非SDE数据库用户创建或导入空间数据,空间数据自动都存在SDE用户下,无法使用其他数据库用户保存空间数据。

 

  解决办法:

  1、如已使用过Create Enterprise Geodatabase工具并出现上面的报错,使用DBA权限用户登录数据库,删除SDE用户和SDE_TBS表空间。

  a)删除SDE用户:drop user cascade;

  b)删除SDE_TBS表空间:drop tablespace sde_tbs including contents;

  2、通过Oracle控制台手动创建SDE_TBS表空间,这里SDE_TBS表空间的数据文件使用的是ASM存储管理。

 

  3、再次使用Create Enterprise Geodatabase工具生成,这时SDE相关的东西就会创建成功,创建日志提示有个警告,但不影响使用。

 

  转载请注明原文地址:http://www.cnblogs.com/litou/p/8028843.html

posted @ 2017-12-12 18:05  泥头  阅读(2491)  评论(0编辑  收藏  举报