oracle数据库的sde数据文件迁移操作方法

本质上是oracle数据文件迁移的问题,一个部署条件如下:两台机器做oracle(非归档模式)的双机热备,在安装sde时,把sdesde.dbf文件放在主服务器上了,而其他的oracle文件放在磁盘阵列上,这样如果主服务器当机,对另外一台热备机器就无法找到sde.dbf文件,失去了双机热备的效果,所以要把sde.dbf文件移动到磁盘阵列上,先把原来的sde.dbf文件拷贝到目标目录下。

 

全部在sql/plus上操作:

 

先用system/manager登录进去

 

SQL> conn /as sysdba;

已连接

 

//关闭数据库

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

 

//mount方式启动数据库

SQL> startup mount;
ORACLE instance started.
Total System Global Area  101782828 bytes
Fixed Size                   451884 bytes
Variable Size              37748736 bytes
Database Buffers           62914560 bytes
Redo Buffers                 667648 bytes
Database mounted.

 

//修改数据文件指向

SQL> alter database rename file 'C:\ORACLE\PRODUCT\10.2.0\DBFILES\DSBI\DS.ORA ' to ' D:\ORACLE\PRODUCT\10.2.0\DBFILES\DSBI\DS.ORA';
Database altered.
 
//打开数据库
SQL> alter database open;
 
此时可能报如下错误:
ORA-01113: 文件 5 需要介质恢复 
ORA-01110: 数据文件 5: 'D:\ORACLE\PRODUCT\10.2.0\DBFILES\DSBI\DS.ORA' 
//打开自动回复
SQL> set autorecovery on
//恢复数据文件
SQL> recover datafile 5;这个5就是上面错误提到的数据文件 5

完成介质恢复

 

//打开数据库

SQL> alter database open;
 
OK
 
可以不关闭sde服务进行上面的操作,但会在sde服务器上跳出很多错误,可以不予理睬,
posted @ 2009-02-13 13:25  尤文之鹤  阅读(688)  评论(0编辑  收藏  举报