操作系统崩溃,数据库全部文件都在时,数据库恢复方法

在论坛上,有人问:

一个朋友的Oracle数据库所在的 操作系统崩溃,现遗留下数据文件
文件分布结构如下:
d:/oracle/oradata/STAN
CONTROL01.CTL    CONTROL02.CTL   CONTROL03.CTL
INDX11.DBF       INDX12.DBF      INDX13.DBF   INDX14.DBF
REDO01.LOG       REDO02.LOG      REDO03.LOG
TEMP01.DBF       TEMP02.DBF      TOOLS01.DBF
UNDO01.DBF       UNDO02.DBF      USER11.DBF
USER12.DBF       USER15.DBF      USER16.DBF
USER21.DBF

要求我帮着恢复(对方也不知道Oracle原来版本是多少),
1)我先安装9i 的 9.0.1   版本,文件夹同上(d:/oracle/oradata/STAN),
2)停止数据库服务
3)把数据文件copy 到里面,
4)启动数据库,结果出现提示,如下:
ORA-00402:版本9.2.0.0.0的数据?更改无法用于版本9.0.0.0
ORA-00405:兼容?型"LMST"

于是从卸载,重新安装 Oracle9i 到 9.2.0.1
重复如下
1)文件夹同上(d:/oracle/oradata/STAN),
2)停止数据库服务
3)把数据文件copy 到里面,
4)启动数据库.仍然行提示出一堆 ??????????? 问号


大侠们,帮看看,改如何恢复。谢谢
另外,我感觉数据文件不全呢,(好象缺失index01...index10.dbf等)本人第一次接触oracle.

 

具体的恢复操作如下:

第一,新建一个实例 ora92
第二,将原数据库的全部相关的文件复制过来。
第三,用旧数据库的参数启动新的实例
SQL> startup pfile='D:/oracle/ora92/database/INITora92.ORA';
ORACLE 例程已经启动。

Total System Global Area 85006980 bytes
Fixed Size 453252 bytes
Variable Size 58720256 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
ORA-01991: ???????'d:/oracle/ora92/DATABASE/PWDtest.ORA'

提示密码文件出错。重建密码文件(先删除掉原来的文件)
D:/>orapwd file=d:/oracle/ora92/DATABASE/PWDtest.ORA password=SYS entries=10

OPW-00005: 存在相同名称的文件 - 请删除或重命名

D:/>orapwd file=d:/oracle/ora92/DATABASE/PWDtest.ORA password=SYS entries=10

关闭数据库,再用参数重启:
SQL> shutdown immediate
ORA-01109: ??????


已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup pfile='D:/oracle/ora92/database/INITora92.ORA';
ORACLE 例程已经启动。

Total System Global Area 85006980 bytes
Fixed Size 453252 bytes
Variable Size 58720256 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。

做完以上的操作以后,如果以后用执行:
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 101784276 bytes
Fixed Size 453332 bytes
Variable Size 75497472 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
ORA-00209: ???????????????????????

数据据还是启不来的。

这时,需要用旧的参数文件替换掉新实例的参数文件:
intitest.ora---------->initora92.ora
要放在指定的目录下才可以。

处理完参数文件后,就可以正常使用新实例了。

SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 85006980 bytes
Fixed Size 453252 bytes
Variable Size 58720256 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值