Oracle 10g dbf文件恢复数据库

最近做了两次用dbf还原oracle数据库,想在此留个脚印,希望可以帮到有需要的朋友。

由于之前服务器硬盘突然坏了。硬盘上所有数据全部用花钱请人还原回来了,包括oracle的dbf、CTL文件。

具体步骤如下:

1、安装oracle 10g数据库并创建一个要恢复的数据库相同一的实例;

2、以sysdba身份登录:对控制文件进行备份;

sqlplus /nolog;

conn /as sysdba;

alter database backup controlfile to trace;

找到oracle的安装目录:..\oracle\product\10.2.0\admin\实例名\udump文件夹下,按修改时间降序,找到最近的trace文件。备份好。

3、shutdown immediate停止数据库实例;备份..\oracle\product\10.2.0\oradata目录下的该实例文件夹(例如:orcl),接着将该实例文件夹删除,把需恢复的数据库的oradata目录下所有文件拷到此目录下。

4、以sysdba进入并执行startup nomount。把数据库启动到nomount状态。

5、从第2步备份出来trace文件中拷贝CREATE CONTROLFILE部分语句来重建控制文件:

此处应根据实际情况增删表空间文件记录,如以下黑体部分则为新增记录。
CREATE CONTROLFILE   set Database ocp  Resetlogs
  MAXLOGFILES 16
  MAXLOGMEMBERS 3
  MAXDATAFILES 100
  MAXINSTANCES 8
  MAXLOGHISTORY 292
LOGFILE
GROUP 1 'C:\oracle\product\10.2.0\oradata\ocp\RED001.LOG'SIZE 50M,
GROUP 2 'C:\oracle\product\10.2.0\oradata\ocp\RED002.LOG'SIZE 50M,
GROUP 3 'C:\oracle\product\10.2.0\oradata\ocpRED003.LOG'SIZE 50M
DATAFILE
'D:\oradata\SYSTEM01.DBF',--要恢复的数据所在的dbf文件
'D:\oradata\UNDOTBS01.DBF',--要恢复的数据所在的dbf文件
'D:\oradata\SYSAUX01.DBF',--要恢复的数据所在的dbf文件
'D:\oradata\USERS01.DBF',--要恢复的数据所在的dbf文件
'D:\oradata\EXAMPLE01.DBF',--要恢复的数据所在的dbf文件
'D:\oradata\HYGEIA01.DBF',--要恢复的数据所在的dbf文件
'D:\oradata\HYGEIA02.DBF',--要恢复的数据所在的dbf文件
'D:\oradata\HYGEIA03.DBF'--要恢复的数据所在的dbf文件
CHARACTER SET ZHS16GBK;

6、RECOVER DATABASE;
7、ALTER DATABASE OPEN;
恢复完成

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值