Innovate the future

Find the passion of life...
  首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Oracle9i数据库中GIS数据备份恢复策略

Posted on 2004-06-01 10:53  BPM  阅读(3683)  评论(5编辑  收藏  举报

对于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 OracleDSN方案,如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_backupLSGX>Geodatabase to shapefile,然后选择服务器端LSGX>Shapefile to Geodatabase,(因为采用直接Geodatabase to Geodatabase的方法只能以此import一条数据,而采用这种方式可以一次import所有记录,此时可能名称发生了变化,需要手动修改)

属性数据还原:

1)        Oracle 服务器端新建一个数据库,如LSGX

2)         ODBC中添加Oracle in OracleDSN方案,如LSGX_Import(也可以使用Oracle Provider for OLE DB的方式)

注意:原来Oracle中的number类型则转换为SQL Servernumeric类型。其结果是把数据恢复到Oracle中的时候,原来在SQL Server中负号丢失了。需要把SQL Server中的numeric改成int,则恢复的时候不会出现问题。

3)        在服务器端右键选择在备份时保存的文件LSGX,利用已经建好的DSN方案把以SQL Server方是保存的数据库文件importOracle数据库中