当前位置: 代码迷 >> Web前端 >> Oracle跟ArcSDE 分开部署方法(转)
  详细解决方案

Oracle跟ArcSDE 分开部署方法(转)

热度:273   发布时间:2012-10-20 14:12:48.0
Oracle和ArcSDE 分开部署方法(转)


Oracle 服务安装在一台服务器,ArcSDE 服务安装在另外一台服务
1) 在客户端安装Oracle 客户端软件,配置本地网络服务名。
2) 如果Oracle 数据库中已经建立sde 用户和sde 的资料档案库,则执行4。如果要全新安装,则先把sde用户和sde表空间删除掉:

删除sde用户:drop user sde cascade;

如果提示无法删除,那里会话中有sde的连接,需要删除会话的sde连接,如下:

SQL 〉DROP USER? USER1 CASCADE

ERROR:ORA-01940: cannot drop a user that is currently connected

由于当前用户正连接到数据库 ,所以无法删除

解决办法:

1、查询此用户的会话进程,

SQL〉SELECT SID,SERIAL# FROM V$SESSION WHERE USERNAME='USER1';

?????? SID??? SERIAL#
---------- ----------
??????? 24????? 25341
??????? 86????? 18117

2、结束此用户的所有会话

SQL>ALTER? SYSTEM? KILL SESSION '24,25341';

System altered.

SQL>ALTER SYSTEM KILL SESSION '86,18117';

System altered.

3、删除用户

SQL〉DROP USER USER1 CASCADE;

之后删除sde表空间,我当时就是以为删除sde用户就可以了,没有删除表空间,走了好多弯路,老是不行。其实如果没有删除表空间,还会有很多表在表空间里,没有清空,所以也需要删除。

可以先查看所有的表空间,再删除:

select ? * ? from ? dba_tablespaces;

drop tablespace sde;

这里候是一个全新的环境可以进行post installing了。
3) 使用Oraclefor ArcSDE post installation 建立sde 用户和sde 的资料档案库,不需要到建设sde服务那一步。
4) 如果已存在,先删除:sdeservice -o delete ,然后执行命令sdeservice -o create -p [sde 用户密码] -dORACLE9I,[oracle 本地网络服务名] -n -i esri_sde 。

sdeservice -o create -d oracle10g,racdb-31 -p sde -i esri_sde -n
注意:sde 的密码和Oracle 本地网络服务名使用实际数值。
5) 修改C:\ArcGIS\ArcSDE\ora9iexe\etc\dbinit.sde 中的设为set LOCAL=[oracle 本地网络服务名]
注意使用local 而不是Oracle_sid。
6) 检查C:\WINDOWS\system32\drivers\etc\services 是否有esri_sde3 5153/tcp #ArcSDE for Oracle9i 的记

录。

esri_sde 5151/tcp #ArcSDE for Oracle10g
8) 启动sde 服务,如果启动失败,重起电脑。在这种情况下,ArcSDE 服务中,“依存关系”项是没有相关Oracle 服务的。

  相关解决方案