>  기사  >  데이터 베이스  >  在Oracle数据库中部署多个SDE服务

在Oracle数据库中部署多个SDE服务

WBOY
WBOY원래의
2016-06-07 16:55:511012검색

问题:目的:在机器上安装了oracle实例,默认会产生一个数据库实例(SID为 Orcl),在这个数据库实例上安装了一个SDE(sde服务名

一、一个Oracle部署多个SDE服务(采用问题的方式提供答案)

问题:

目的:

在机器上安装了oracle实例,默认会产生一个数据库实例(SID为 Orcl),在这个数据库实例上安装了一个SDE(sde服务名为 esri_sde)。现在通过这个oracle的工具产生了另外一个数据库实例(SID为 SDEInst),现在的目的是:在这个SDEInst数据库实例上部署一个SDE。

操作过程:

1、 使用DBCA产生SID为SDEInst的数据库实例,然后在这个数据库实例创建了一个用户(其用户名为:sde,只赋予了角色权限[Connect、DBA、RESOURCE],其他权限默认),用户对应的表空间也是自己创建的。

2、安装ESRI全球网上提供的方法创建、修改文件。具体如下:

I、拷贝 %SDEHOME% 到一个新的位置(%SDEHOME%我的拷贝的内容为D:\Program Files\ArcSDE 9.2\ArcSDE\ora9iexe),,然后重命名为ora9iexe2.

II、用数据库实例SID(这里为SDEInst)更新dbinit.sde 文件内容(ArcSDE\ora9iexe2\etc下),将它更改为:# Oracle SID for service demo_sde.

set ORACLE_SID = SDEInst

III、更新 ArcSDE\ora9iexe2\etc\services.sde文件,设置它的服务名和端口号为   demo_sde      5152/tcp         #ArcSDE for Oracle

IV、在C:\WINDOWS\system32\drivers\etc\services 添加上服务名和端口号demo_sde      5152/tcp

V、清除了ArcSDE\ora9iexe2\etc由ora9iexe带来的日志文件的内容---sde_setup.log

VI、按照ESRI全球网的方法,需要更新giomgr.defs和dbtune.sde 文件的内容,由于不知道如何具体设置参数,就没有更改过.使用 Orcl中的sde参数应该没有问题吧?

3、创建ArcSDE和Geodatabase的系统表和存储过程等,这里使用的命令是:

sdesetup -o install -d ORACLE9I -H "D:\Program Files\ArcSDE 9.2\ArcSDE\ora9iexe2" -u sde -p sde

这个命令行中,开始也遇到了很多问题。后来用户使用自己创建的 sde 用户并附上 DBA权限就创建成功了。但是ESRI全球网上对用户 -p的描述为:Database administrator password,为什么我用其他用户名的DBA用户就不行?这个问题就这样过了,毕竟已经创建成功了。

4、创建sde服务(这个是出错的地方)

使用SDE命令行:sdeservice -o create -d ORACLE9I,SDEInst -p sde -i demo_sde -H "D:\Program Files\ArcSDE 9.2\ArcSDE\ora9iexe2" -n .

可是在使用运行的过程中总是抱如下错误(参考图片): Wrong RDBMS Name "ORACLE9I,SDEInst "。 我的数据库是ORACLE9I,并且如上描述我的SID为SDEInst,是没有问题的!!!?

后来我尝试将"-d ORACLE9I,SDEInst" 换成"-d ORACLE,SDEInst" 居然创建成功了,但是这个名为demo_sde的SDE服务还是启动不起来,对比看了一下成功运行的SDE服务,发现这个demo_sde的SDE服务少了依赖的数据库服务OracleServiceSDEINST,也就是说这个SDE服务没有绑定到oracle实例上。

giomgr进程答案:

查看了下应用程序日志,上面主要是sde许可的问题。其实是很简单的问题。

(以前一直服务信息是在系统日志里面,没有看应用程序日志)

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.