FAQ: 当使用操作系统认证直连到空间数据库时,如何指定Oracle的SID

文章编号 : 35424
软件: ArcSDE 9.2,9.3,9.3.1
操作系统: N/A
已邀请:

EsriSupport

赞同来自:

问题: 当使用操作系统认证直连到空间数据库时,如何指定Oracle的SID?
回答:
当使用ArcSDE客户端并且使用操作系统认证连接到Oracle的空间数据库时,必须使用直连,并且要指定连接到的Oracle的实例。 下面有两种可以指定Oracle SID的方法。 1. 可以在连接会话中设置ORACLE_SID。 2. 可以在连接字符串中设置ORACLE_SID. 在连接会话中设置ORACLE_SID 为了在连接会话中设置ORACLE_SID,在本机的命令提示符中进行连接之前需要进行一下设置: set ORACLE_SID=<SQL_Net_alias>
此处的<SQL_Net_alias>的是Oracle客户端连接到服务器端的网络服务器名。
远程的连接会话(windows操作系统)连接Oracle之前可以进行按照如下的方法设置ORACLE_SID

set LOCAL=<SQL_Net_alias>
远程的连接会话(unix操作系统),在连接Oracle之前可以按照如下方法设置ORACLE_SID

set TWO_TASK=<SQL_Net_alias>
在客户端的连接字符串中设置ORACLE_SID
使用连接字符串指定Oracle的实例信息,特定的语句必须通过连接文件的方式提供给服务(ArcGIS 或ArcIMS客户端) 或者通过-i选项(ArcSDE管理命令)。 连接语句随着连接的Oracle的版本,连接客户端同Oracle的服务器是否在一台机器等情况而不同。
对于本机的客户端,语法如下:

sde:oracle<release>:/;ORACLE_SID=<SQL_Net_alias>.
对于远程的windows机器,语法如下:

sde:oracle<release>:/;LOCAL=<SQL_Net_alias>
对于远程的Unix机器,语法如下:

sde:oracle<release>:/;TWO_TASK=<SQL_Net_alias>
<Release>是所使用的Oracle的客户端版本,举个例子,对于一个通过远程连接到Oracle10g服务器上的连接语句如下:

sde:oracle10g:/;LOCAL=ORAGDB
命令行如下:

sdelayer -o register -l foo,shape -e p -t ST_GEOMETRY -i sde:oracle10g:/;LOCAL=ORAGDB -C objectid

ArcSDE 9.3 for Oracle10g Build 508 Thu Apr 17 12:23:18 2008
Layer Administration Utility
-----------------------------------------------------
Successfully Created Layer.
由于使用了操作系统认证,因此不需要提供用户名和密码。在ArcGIS Desktop中可以在空间数据库连接对话框中设置操作系统认证,在ArcIMS中在ArcSDE连接对话中在用户名出敲入斜杠。在ArcSDE命令中,不需要指定-u 和 –p选项。




创建时间:2008-08-26
最近更新: 2009-09-25


原文链接
http://support.esrichina.com.cn/2008/0826/859.html

要回复问题请先登录注册