ArcSDE安装详解
一、安装的前期准备:
1.1 首先创建一个Oracle数据库实例用来存储GIS数据。 使用sys用户登陆,在该数据库中创建一个表空间 sde 大小可以为200MB
1.2 创建sde用户,设置表空间为sde,临时为temp;在角色标签中,授予sde用户connect和Resource角色;在系统权限中授予sde用户Select Any Table权限;在限额中设置sde表空间为无限制,点击应用创建sde用户。
1.3 在打开方案->程序包->SYS,选择DBMS_LOCK,鼠标右击选择授予权限,授予EXECUTE 给PUBLIC;用相同的方法授予DBMS_PIPE给Public.
1.4如果是AIX系统操作,需要以下文件或更高的版本
xlC.aix50.rte 6.0.0.0
xlC.msg.en_US.rte 6.0.0.0
xlC.rte 6.0.0.0
还需要做一下环境变量的设置:
SDEHOME <location of ArcSDE>
ORACLE_HOME <location of Oracle>
ORACLE_SID <Oracle SID value>
TNS_ADMIN <location of the tnsnames.ora file>
` 1A! !a~ zzzzzz
PATH $PATH:$SDEHOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH $SDEHOME/lib:/usr/lib:/lib:$ORACLE_HOME/lib (All platforms except HP and IBM)
LIBPATH $SDEHOME/lib:/usr/lib:/lib:$ORACLE_HOME/lib (for IBM only)
通过上面的操作,我们的准备工作就完成了,其实 Post Installation 前半部分的操作就是上面这个过程的向导,通过向导界面就可以完成,写出来只是为了有什么问题可以参考一下。
二、ArcSDE软件安装:
2.1首先,Setup,一路下一步到结束。如果是Oracle和SDE安装在同一台机器,而且运气比较好,就不需要往下看了。启动服务,OK!
2.2 后面的POST INSTALL是比较麻烦的,在DOS状态下,输入:
sdesetupora9i -o install -p sde
其中sdesetupora9i根据不同数据库版本而定,如果你的8i那么就是sdesetupora8i; -o 后面是操作; -p后面是sde用户的密码。系统会提示你确认,输入 Y 确认。(一堆堆表格就拷到sde表空间里面了,如果已经建立过并导入过数据就不用执行了。)
2.3创建SDE服务:在DOS状态下输入:
sdeservice -o create -p sde -H D:\tools\SDE\ArcSDE\ora9iexe -d oracle9i,oracle92 -i esri_sde -n
其中sdeservice是创建服务的命令行工具;-o 后面是操作; -p 后面是sde用户的密码;-h 后面是ArcSDE的安装目录(这是我的安装目录,你的有可能会不同,但最后一级一定是 ora9iexe 目录,Oracle8是oraexe;本文档中以后的SDE安装路径同样处理。);-d 后面是数据库版本 + 数据库实例名(是SID,不是服务名); -i 后面是要创建的SDE服务的名称; -n 确认。
2.4修改Windows服务配置文件首先在c:\winnt\system32\drivers\ect目录下找到 services文件,使用记事本打开,在最后加一行: esri_sde 5151/tcp #ArcSDE for Oracle9i。
2.5修改SDE服务配置文件首先在 D:\tools\SDE\ArcSDE\ora9iexe\etc目录下找到 services文件,使用记事本打开,在最后加一行: esri_sde 5151 #ArcSDE for Oracle9i。
2.6启动SDE服务。使用命令行:
sdemon -o start -p sde
其中 sdemon是启动工具,-o 后面是操作;-p 后面是sde用户的密码。
三、常见问题说明:
3.1 Oracle和SDE不在同一台机器上时如何配置服务:
上面默认的都是Oracle和SDE在同一台机器上,如果不在同一台机器上,可以创建SDE服务,但是无法启动,会报下面的错:
esri_sde service failed during initialization.
Please check event log or error log files.
Error starting esri_sde_206 service(997)
Could not start ArcSDE -- Check Network, $SDEHOME disk, DBMS settings and dbinit.sde.
现在只要打开D:\tools\SDE\ArcSDE\ora9iex\etc\下的dbinit.sde文件,里面会有一句:set ORACLE_SID=ORACLE9I 改为:set LOCAL=ORACLE9I就可以了。其中ORACLE9I是我的实例名,记得替换成你的!
3.2不同网段的ArcSDE数据库连接失败的解决方案如下:
打开C:\WINDOWS\system32\drivers\etc目录(如果Windows没有安装在C盘,将C换为相应的盘符,如:D、E等)下的Hosts文件,如果该文件不存在,则新建一个。在该文件最后添加一行:
10.168.0.159 sdeServer
保存文件,重新连接,则能成功连接。
3.3一台机器上创建多个ArcSDE实例:
sqlplus /nolog
conn sys/sys@spdmistb as sysdba
先手工创建SDE用户及表空间;
SDE9.1:手工给SDE用户授权
grant execute on DBMS_PIPE to sde;
grant execute on DBMS_LOCK to sde;
grant ALTER ANY INDEX to sde;
grant ALTER ANY TABLE to sde;
grant ANALYZE ANY to sde;
grant CREATE ANY INDEX to sde;
grant CREATE ANY PROCEDURE to sde;
grant CREATE ANY SEQUENCE to sde;
grant CREATE ANY TRIGGER to sde;
grant CREATE ANY VIEW to sde;
grant CREATE SESSION to sde;
grant DROP ANY INDEX to sde;
grant DROP ANY TABLE to sde;
grant DROP ANY VIEW to sde;
grant DROP ANY PROCEDURE to sde;
grant DROP ANY SEQUENCE to sde;
grant EXECUTE ANY PROCEDURE to sde;
grant SELECT ANY SEQUENCE to sde;
grant SELECT ANY TABLE to sde;
grant UNLIMITED TABLESPACE to sde;
grant execute on DBMS_PIPE to sde;
grant execute on DBMS_LOCK to sde;
SDE9.2手工给SDE用户授权
grant execute on DBMS_PIPE to sde;
grant execute on DBMS_LOCK to sde;
grant resource to sde;
grant CREATE SESSION to sde;
grant CREATE TABLE to sde;
grant CREATE PROCEDURE to sde;
grant CREATE SEQUENCE to sde;
grant CREATE TRIGGER to sde;
grant UNLIMITED TABLESPACE to sde;
grant CREATE TYPE to sde;
grant CREATE LIBRARY to sde;
grant CREATE PUBLIC SYNONYM to sde;
grant DROP PUBLIC SYNONYM to sde;
grant ALTER ANY INDEX to sde;
grant ALTER ANY TABLE to sde;
grant ANALYZE ANY to sde;
grant CREATE ANY INDEX to sde;
grant DROP ANY INDEX to sde;
grant CREATE ANY PROCEDURE to sde;
grant DROP ANY PROCEDURE to sde;
grant CREATE ANY SEQUENCE to sde;
grant DROP ANY SEQUENCE to sde;
grant CREATE ANY TRIGGER to sde;
grant CREATE ANY VIEW to sde;
grant DROP ANY TABLE to sde;
grant DROP ANY VIEW to sde;
grant EXECUTE ANY PROCEDURE to sde;
grant SELECT ANY SEQUENCE to sde;
grant SELECT ANY TABLE to sde;
grant CREATE OPERATOR to sde;
grant CREATE INDEXTYPE to sde;
grant execute on DBMS_PIPE to sde;
grant execute on DBMS_LOCK to sde;
对于Windows:
1. 拷贝 %sdeHOME% 到一个新的位置。
2. 用适当的RDBMS连接变量(如ORACLE_SID)更新新的dbinit.sde 文件。
3. 用新的实例名、端口号和网络协议更新 %SDEHOME%\etc\services.sde文件。
4. 添加服务名、端口号和网络协议到 c:\winnt\system32\drivers\etc\services 文件中。须确认所用的端口号没有被用过。
5. 删除新的giomgr.log文件中的内容。
6. 如果需要,更新新的giomgr.defs文件,以指定新实例的操作参数。
7. 如果需要,更新新的dbtune.sde 文件,以指定参数给在新实例的数据库中创建数据时使用。
8. 确认SDEHOME 变量指向正确的新ArcSDE实例位置,并运行给对应数据库使用的sdesetup 命令来创建新数据的存储表。
9. 使用 “sdeservice -o create” 命令创建新的ArcSDE服务。
SDE9.1:
sdesetupora9i -o install -H C:\arcgis\ArcSDE\TBsde -u sde -p sde
sdeservice -o create -d ORACLE9I,SPDMISTB -p sde -i 5152 -H C:\arcgis\ArcSDE\TBsde
sdesetupora9i -o update_key -l C:\arcgis\ArcSDE\ECP895992114_v92.ecp -H C:\arcgis\ArcSDE\TBsde -p sde
sdemon -o start -p sde -H C:\arcgis\ArcSDE\TBsde
SDE9.2:
sdesetup -o install -d ORACLE10G -H "D:\Program Files\ArcGIS\ArcSDE\zxjc" -u sde -p sde -l "D:\Program Files\ArcGIS\ArcSDE\ArcGIS93全套至2012年(含ae,ims,server,sde).ecp"
sdeservice -o create -d ORACLE,ZXJC -p sde -i zxjc -H "D:\Program Files\ArcGIS\ArcSDE\zxjc"
sdesetup -o update_key -d ORACLE10G -l "D:\Program Files\ArcGIS\ArcSDE\ArcGIS93全套至2012年(含ae,ims,server,sde).ecp" -H "D:\Program Files\ArcGIS\ArcSDE\zxjc" -p sde
(备注:运行第一步安装服务时,提示某某行错误,此时可尝试删除C:\Documents and Settings\Administrator\Local Settings\Temp 目录下的sde oracle 文件。如有必要重启一下机器,然后继续安装
安装时需先删除进程中一个g开头的进程)
对于UNIX:
1. 给新实例创建一个新的工作目录。
2. 拷贝 $SDEHOME 到新创建的工作目录。
3. 用适当的RDBMS 连接变量(如ORACLE_SID)更新新的dbinit.sde 文件。
4. 用新的实例名、端口号和网络协议更新 $SDEHOME/etc/services.sde 文件。
5. 添加服务名、端口号和网络协议到 /etc/services 文件。须确认所用的端口号没有被用过。
6. 删除新的giomgr.log文件中的内容。
7. 如果需要,更新新的giomgr.defs文件,以指定新实例的操作参数。
8. 如果需要,更新新的dbtune.sde 文件,以指定参数给在新实例的数据库中创建数据时使用。
9. 确认SDEHOME 变量指向正确的新ArcSDE实例位置,并运行给对应数据库使用的sdesetup 命令来创建新数据的存储表。
四、配置文件说明:
根据经验,上面的所有操作都集中在这几个文件上,C:\WINDOWS\system32\drivers\etc下的hosts,services;D:\tools\SDE\ArcSDE\ora9iex\etc下的dbinit.sde,services.sde。说明如下:
hosts:主机域名解析文件。当在网络上找不到所需要的域名解析服务时,Windows就会调用这个文件来查找响应的IP地址。在这里可以绑定SDEServer为你需要的SDE服务器的IP地址。
services:服务端口列表文件。主机对外开发的所有服务端口都在这里注册,SDE服务当然也在其中,必须保证你的SDE服务以规定的格式存在于其中,且不与其他服务冲突,两个SDE实例同时存在时也必须保证互相不冲突。
dbinit.sde:SDE数据库配置文件。当数据库在本机时为 set ORACLE_SID=实例名,数据库在其他机器上时为 set LOCAL=实例名。
services.sde:SDE服务列表。SDE本身的服务注册列表,必须保障你的所有SDE实例都在其中。
个人认为 sdeservice –o create 命令的主要任务之一就是把服务端口号写到services、services.sde中,把实例名写到dbinit.sde中。
五、常用命令
-------------------------------------------------------------------------
sdeservice -o create -d <ORACLE8I,SID|ORACLE9I,SID|ORACLE10G,SID|
SQLSERVER,SQLSERVERINSTANCE|DB2,DB2INSTANCE|
INFORMIX|COVERAGES>
-p <SDE_DBA_Password>
[-i <service>] [-u <service_user>] [-n]
[-H <sde_directory>] [-P <service_user_password>]
sdeservice -o delete [-d <ORACLE8I|ORACLE9I|ORACLE10G|SQLSERVER|
DB2|INFORMIX|COVERAGES>]
[-i <service>] [-N]
sdeservice -o register -r <registry_keyword> -v <value>
-d <ORACLE8I|ORACLE9I|ORACLE10G|SQLSERVER|
DB2|INFORMIX|COVERAGES>
-p <SDE_DBA_Password> [-i <service>]
sdeservice -o unregister -r <registry_keyword>
-d <ORACLE8I|ORACLE9I|ORACLE10G|SQLSERVER|
DB2|INFORMIX|COVERAGES>
-p <SDE_DBA_Password> [-i <service>]
sdeservice -o modify -r <registry_keyword> -v <new_value>
-d <ORACLE8I|ORACLE9I|ORACLE10G|SQLSERVER|
DB2|INFORMIX|COVERAGES>
-p <SDE_DBA_Password> [-i <service>]
sdeservice -o list [-i <service>]
-------------------------------------------------------------------------
sdemon -o status {[-i <service>] [-s <server_name>] | [-H <sde_directory>]}
[-q]
sdemon -o start {[-i <service>] [-s <server_name>] | [-H <sde_directory>]}
[-p <DB_Admin_password>]
sdemon -o shutdown {[-i <service>] [-s <server_name>] | [-H <sde_directory>]}
[-p <DB_Admin_password>] [-N]
sdemon -o pause {[-i <service>] [-s <server_name>] | [-H <sde_directory>]}
[-p <DB_Admin_password>]
sdemon -o resume {[-i <service>] [-s <server_name>] | [-H <sde_directory>]}
[-p <DB_Admin_password>]
sdemon -o info -I {users | config | stats | locks | vars} [-q]
{[-i <service>] [-s <server_name>] | [-H <sde_directory>]}
sdemon -o kill -t {all | <pid>} [-p <DB_Admin_password>] [-N]
{[-i <service>] [-s <server_name>] | [-H <sde_directory>]}
其中: -o 要做的操作
-p sde用户的密码
-h sde的安装路径
-i sde服务名
-n 确认
其他的还没有用过,用过以后再补,不过应该能不会很难吧!以上是SDE的一些基本使用方法。非常感谢ESRI公司技术服务人员的帮助。另外,你如果发现有什么不对的,请及时告诉我!
分享到:
相关推荐
Oracle10的安装中常见问题解决,ArcSDE9.2的安装,及其配置
在本教程中,我们将深入探讨Arc SDE与Oracle 10g和DB2的安装过程,主要关注9.2和9.3两个版本。 首先,让我们关注ArcSDE 9.2 for Oracle 10g的安装步骤: 1. **系统需求**:确保你的计算机满足ArcSDE 9.2及Oracle ...
- 找到安装文件所在的路径,例如`c:\安装软件\ ArcSde9.3Oracle10g`。 - 双击该目录下的安装程序以启动安装向导。这将引导你完成一系列步骤,确保正确安装ArcSDE。 2. **安装ArcSDE**: - 在安装过程中,你需要...
4. **多文件项目**:在大型项目中,可能涉及多个源文件,`sde-gcc`可以一次性处理所有文件并完成链接。 5. **优化选项**:为了提升程序性能,可以使用 `-O` 选项开启不同级别的优化,如 `-O2` 表示二级优化。 6. *...
ArcSDE 10.2 for Oracle 10g 和 11g 是Esri公司推出的用于管理和分发地理空间数据的中间件产品,它在Windows平台上提供了与Oracle数据库系统的集成。ArcSDE使得GIS(地理信息系统)软件,如ArcGIS,能够高效地访问和...
arcgis sde 10授权文件 for oracle11g
总的来说,"SDE10sp3-Oracle11g.msp"补丁是针对ArcSde 10与Oracle 11g数据库之间可能出现的问题进行的优化和修复,对于那些使用ArcGIS进行大规模地理空间数据管理的用户来说,及时安装这类补丁是提高工作效率和数据...
- 如果不指定`sde:oracle11g:`,ArcCatalog会自动生成默认格式,如`sde:oracle11g:127.0.0.1[:1521]/orcl`。 - 在代码中,可以使用`IPropertySet`设置连接参数,确保`INSTANCE`以`sde:oracle11g:`开头,如果使用...
本文将详细介绍如何在Oracle 10g/11g 和 ArcGIS 9.3/10环境中配置多个数据库及多个ArcSDE服务的过程。通过这种方式,可以实现每个数据库与一个独立的SDE服务相对应,并且每个数据库都有自己的监听程序。这种方法对于...
- **额外配置**:如果需要通过非ArcGIS的客户端应用程序连接数据库,则可能还需要在tnsnames.ora文件(Oracle 10g)或extproc.ora文件(Oracle 11g)中添加相应的条目,并设置相应环境变量,如ORA_HOME和PATH等。...
在处理大规模栅格数据导入SDE Oracle 10G的过程中,需要综合考虑数据库配置、操作系统资源管理和性能监控等多个方面。通过对Oracle数据库和Windows XP操作系统的合理配置及优化,可以有效解决内存限制等问题,确保...
总结,安装ArcSDE for Oracle10g R2涉及了多个关键步骤,包括安装程序的运行、路径选择、数据库连接设置、用户与表空间的创建以及许可文件的导入。每个步骤都需要仔细操作,以确保ArcSDE能正确地与Oracle数据库集成...
《ArcSDE9.3 for Oracle10g安装教程及常见问题解决》 ArcSDE是ESRI公司提供的一种用于管理地理空间数据的中间件,它允许用户在Oracle数据库上存储、管理和操作地理信息。本教程将详细阐述ArcSDE9.3 for Oracle10g的...
### ArcEngine开发中连接SDE数据库的关键知识点 #### 一、使用C#连接Oracle数据库的基础配置与实践 在ArcEngine的二次开发过程中,连接Oracle数据库是常见需求之一。以下是使用Visual Studio 2010环境下C#语言进行...
### ArcSDE 9.3 for Oracle 10g r2 安装指南 #### 一、概述 本文档旨在提供详细的安装指南,帮助用户顺利安装 ArcSDE 9.3 for Oracle 10g r2 32位版本。由于安装过程中可能会遇到多种复杂的情况,因此本指南会详细...
1. Oracle 11g r2 数据库安装:Oracle 数据库必须为 64 位的数据库版本。 2. Oracle 11g r2 客户端安装:Oracle 客户端必须为 32 位。 3. ArcGIS 10.2 安装 4. ArcSDE 10.2 安装 二、ArcGIS 10.2 与 Oracle 11g r2 ...
《ArcSDE92 for Oracle10g(Linux)安装指南》 在Oracle数据库系统上部署ArcSDE92服务是GIS系统集成的关键步骤。本文将详细阐述在Linux环境下安装ArcSDE92 for Oracle10g的过程,包括创建用户、配置环境变量、上传...