对于Oracle9i有很多备份恢复的方法,可以通过Oracle9i直接进行备份恢复的方法,也可以通过ODBC,利用SQL Server 2000对 Oracle数据库进行备份还原操作。下面简单介绍后种备份恢复的方法:
备份:
SDE数据备份:
1) 首先在硬盘中创建一个数据集(New Personal Geodatabase),如LSGX_backup
2) 右键选中LSGX_backup—>New—>Feature Dataset
3) 创建数据库,Name—>LSGX,同时Import一个SDE数据,用来确定LSGX数据库的坐标体系
4) 然后选择服务器端SDE数据(LSGX),Export—>Geodatabase to Geodatabase,每次只能导出一条记录,直到完成所有的数据备份
5) 结果是所有的SDE数据都存放在LSGX_backup.mdb数据库文件中(此文件可以移植,可以用来恢复数据库)
属性数据备份:
1) 在ODBC中添加Oracle in Oracle的DSN方案,如LSGX_Export(也可以使用Oracle Provider for OLE DB的方式)
2) 在SQL Server中新建一个临时数据库LSGX,用来存放从Oracle中备份出来的数据
3) 选择所有任务—>导入,把Oracle中的符合要求的表,如以LSGX开头的表全部导入到临时数据库中
4) 右键选择LSGX数据库,所有任务—>备份—>添加—>Name(LSGX)
5) 结果所有的属性数据库都存放在LSGX数据库文件中(此文件可以移植,可以用来恢复数据库)
恢复:
SDE数据还原:
1) 在服务器上新建一个SDE数据库,如LSGX
2) 右键选择在备份时保存的文件LSGX_backup—LSGX—>Geodatabase to shapefile,然后选择服务器端LSGX—>Shapefile to Geodatabase,(因为采用直接Geodatabase to Geodatabase的方法只能以此import一条数据,而采用这种方式可以一次import所有记录,此时可能名称发生了变化,需要手动修改)
属性数据还原:
1) 在Oracle 服务器端新建一个数据库,如LSGX
2) 在ODBC中添加Oracle in Oracle的DSN方案,如LSGX_Import(也可以使用Oracle Provider for OLE DB的方式)
注意:原来Oracle中的number类型则转换为SQL Server中numeric类型。其结果是把数据恢复到Oracle中的时候,原来在SQL Server中负号丢失了。需要把SQL Server中的numeric改成int,则恢复的时候不会出现问题。
3) 在服务器端右键选择在备份时保存的文件LSGX,利用已经建好的DSN方案把以SQL Server方是保存的数据库文件import到Oracle数据库中