SDE命令操作
作为SDE用户的管理员通过命令可以做很多工作,参考网上的资料现总结整理如下:
1、sdemon
(1)sdeMon主要是用来管理sde服务,包括7种命令
Status 获取指定实例的状态
start 启动sde服务
shutdown 关闭SDE服务
pause 暂停服务(不接受连接)
resume 重启服务(使服务处于可以连接的状态)
info 显示实例的相关信息
kill 删除所有或者指定的SDE连接
-o 操作
-s 指定的服务
-t 终止
-p SDE管理员密码
-H ArcSDE 实例所在的目录
-i 操作的实例
-I 信息类型
(2)查看sdemon所有的命令在命令行中输入sdemon -h即可
(3)查看SDE锁
sdemon -o info -I locks -i 5151/tcp -s 172.168.13.0
(4)终止某个空间用户连接
在空间数据库连接中,有时候出连接进程挂起或者非法连接的时候,可以使用SDE终止其连接。操作为:
首先,从连接列表中获取该连接的信息
sdemon –o info –I users
在获取到需要终止的连接ID后,使用kill命令
sdemon –o kill –t < 连接 ID>
<连接ID> 完成此项操作需要提交SDE用户密码。
2、sdeversion
压缩多版本数据库(Multi-versioned Geodatabase)
在ArcSDE Geodatabase中,随着数据编辑工作的进行,SDE空间资料档案库中相应元数据表、以及用户模式中的A表和D表的记
录逐渐增加,会影响空间数据的访问效率,因此经常需要进行数据库版本的压缩工作。在确定数据库不存在任何锁定后,便
可以进行压缩工作,操作为:
sdeversion –o compress –u sde
完成此项操作需要提交SDE用户密码。
3、sdedbtune
在控制空间数据的数据段、索引段存储的时候,SDE用户可以使用sdedbtune命令来提高数据库效率。
4、sdeservice
(1)sdeservice –o modify命令来修改。这个命令可以用于修改SDEHOME目录、SDE用户、License服务器和NLS 语言。一旦
SDE用户密码在数据库和注册表中都经过修改,这时我们便可以启动ArcSDE服务了。
sdeservice –o modify –r <SDEHOME|SDE_DBA_PASSWORD|LICENSE_SERVER|NLS_LANG>
-p <old_DB_ASMIN_password> -v <new_value> [-i <service>] [-q]
具体介绍:
-------------------------------------------------------------------------
sdeservice -o create -d <ORACLE,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 <ORACLE|SQLSERVER|DB2|
INFORMIX|COVERAGES>]
[-i <service>] [-N]
sdeservice -o register -r <registry_keyword> -v <value>
-d <ORACLE|SQLSERVER|
DB2|INFORMIX|COVERAGES>
-p <SDE_DBA_Password> [-i <service>]
sdeservice -o unregister -r <registry_keyword>
-d <ORACLE|SQLSERVER|
DB2|INFORMIX|COVERAGES>
-p <SDE_DBA_Password> [-i <service>]
sdeservice -o modify -r <registry_keyword> -v <new_value>
-d <ORACLE|SQLSERVER|
DB2|INFORMIX|COVERAGES>
-p <SDE_DBA_Password> [-i <service>]
sdeservice -o list [-i <service>] 列出所有服务
5.sdeexport sdeimport
实用教程:
1.导出
(1)导出数据集表结构
(2)sdeexport批处理命令导出要素类数据
2.导入
(1)先导入数据集表结构
(2)sdeimport批处理命令导入要素类数据
如:
导出SQL数据库图层
sdeexport -o create -l sde.SDE.ASJ_PT_500,shape -f
D:/ASJ_PT_500.exp -i 5151 -u sa -p sa
导入到Oracle数据库中
sdeimport -o create -l ASJ_PT_500,shape
-f D:/ASJ_PT_500.exp -i ora_sde -u sde -p sde
如果已经创建原表:
sdeimport -o append -l SDE.ASJ_PT_500,shape
-f D:/ASJ_PT_500.exp -i ora_sde -u sde -p sde
详细解释:
这种方式主要用于备份指定的空间数据对象,比如某个图层和要素类、其中的某些满足特定条件的记录、甚至特定的版本。
实现这种备份方式的方法主要是利用ArcSDE提供的管理工具:sdeexport和sdeimport命令。它们的位置在%ArcSDEHOME%/bin/
中。其中,sdeexport用于将空间数据从ArcSDE Server上备份为单独的数据文件,而sdeimport用于将经由sdeexport备份的
数据文件恢复到ArcSDE Server中。
这一方式的缺点在于不能一次备份完整的空间数据库。但是也有个明显的优点,在于通过sdeexport和sdeimport工具,可以
将空间数据在不同的关系型数据库管理系统(RDBMS)之间进行移植。
(一).备份全部记录
使用sdeexport命令的缺省方式即可,比如:
(1)将指定的图层备份到备份文件
sdeexport -o create -l dcxq,shape -f d:/dcxq.exp -i jerry_oracle -u sde -p sde
就是将名为jerry_oracle的sde服务(ArcSDE for Oracle8i)中的指定图层“dcxq”按缺省方式备份到文件d:/dcxq.exp中。
(2)利用操作系统命令,拷贝备份文件到目标服务器上
(3)将备份文件恢复至目标RDBMS中
sdeimport -o create -l newDcxq,shape -f d:/dcxq.exp -i jerry_sqlsvr -u sde -p sde
此操作将备份文件恢复到名为jerry_sqlsvr的sde服务(ArcSDE for SQLServer)中,图层名为:newDcxq。
(二).备份部分记录
sdeexport命令中添加-w参数和一个条件选择表达式即可,比如:
(1)将指定图层中满足条件的记录备份到备份文件
sdeexport -o create -l dcxq,shape -f d:/dcxq.exp -w xzqy = '徐汇区' -i jerry_oracle -u sde -p sde
就是将名为jerry_oracle的sde服务(ArcSDE for Oracle8i)内的指定图层“dcxq”中所有"徐汇区"的人口调查小区备份到
文件d:/dcxq.exp中。
(2)利用操作系统命令,拷贝备份文件到目标服务器上
(3)将备份文件恢复至目标RDBMS中
sdeimport -o create -l XHDcxq,shape -f d:/dcxq.exp -i jerry_sqlsvr -u sde -p sde
此操作将备份文件恢复到名为jerry_sqlsvr的sde服务(ArcSDE for SQLServer)中,图层名为:XHDcxq。
(三).备份特定数据版本
sdeexport命令中添加-v参数和一个版本名称即可,比如:
(1)将指定图层的特定版本备份到备份文件
sdeexport -o create -l dcxq,shape -f d:/dcxq.exp -V verAPR -i jerry_oracle -u sde -p sde
此操作将名为jerry_oracle的sde服务(ArcSDE for Oracle8i)内的指定图层“dcxq”的verAPR版本备份到文件d:/dcxq.exp
中。
(2)利用操作系统命令,拷贝备份文件到目标服务器上
(3)将备份文件恢复至目标RDBMS中
sdeimport -o create -l APRdcxq,shape -f d:/dcxq.exp -i jerry_sqlsvr -u sde -p sde
此操作将备份文件恢复到名为jerry_sqlsvr的sde服务(ArcSDE for SQLServer)中,图层名为:APRDcxq。
6.exp imp
本方法只使用与Oracle数据库
导出
如:exp sde/sde@huishi file=c:/sde.dmp
用户名/密码@Oracle服务名
导入
如:imp sde/sde fromuser=sde file=c:/sde.dmp touser=sde
具体的Oracle数据库备份实现步骤需要参考Oracle相关文档,比如《Oracle8 Backup and Recovery Guide》。本实例采用
Oracle中的逻辑备份,使用了exp和imp工具,以sde用户方式备份和恢复整体空间数据。
* 备份数据库:使用Oracle中的exp命令,以sde用户方式备份所有相关数据。
* 恢复数据库:使用Oracle中的imp命令,以sde用户方式恢复后备数据文件。
* 恢复ArcSDE系统文件:如果有必要,在恢复oracle数据之后,需要恢复安装ArcSDE的程序文件;另外还需要从备份机器上
恢复dbtune,giomgr.defs,dbinit.sde,和services.sde文件。
7.其他命令
除次以外,我们还可以通过命令行的方式来管理服务和数据,这些程序都放在%SDEHOME%/bin文件夹内,如:
Alphabetical listing of commands
Command Description
cov2sde
Converts ArcInfo coverages to ArcSDE feature classes.
sde2cov
Converts ArcSDE feature classes to ArcInfo coverages.
sde2shp
Converts an ArcSDE feature class to an ESRI shapefile.
sde2tbl
Converts ArcSDE tables into INFO and dBASE tables.
sdeconfig
Manages your ArcSDE server configuration file
sdedbtune
Exports and imports an ArcSDE dbtune file.
sdeexport
Creates an ArcSDE export file.
sdegcdrules
Manages ArcSDE geocoding rules
sdegroup
Merges feature classes.
sdeimport
Imports data from an ArcSDE export file.
sdelayer
Administers feature classes.
sdelocator
Manages ArcSDE locators.
sdelog
Administers ArcSDE log files.
sdemon
Manages the ArcSDE server.
sderaster
Manages ArcSDE raster layers.
sdeservice
Manages the ArcSDE service on Windows NT platforms.
sdesetup
Initial setup program for ArcSDE for your RDBMS.
sdetable
Administers business tables and their data.
sdeversion
Manages versions of a geodatabase.
sdexinfo
Provides descriptive information of an ArcSDE export file.
sdexml
Administers XML columns.
shp2sde
Converts an ESRI shapefile to an ArcSDE feature class.
tbl2sde
Converts INFO and dBASE tables into ArcSDE tables