打印本文 打印本文 关闭窗口 关闭窗口
Oracle恢复实验一:使用添加数据文件之前的控制文件
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2040  更新时间:2009/4/22 22:03:51  文章录入:mintao  责任编辑:mintao

---------------------------------------------

实验平台:windows + Oracle 10.1.0.2.0

Author:NinGoo  2005-03-26

--------------------------------------------

 

在备份控制文件之后,在数据库中又添加了数据文件,然后当前控制文件损坏,需要使用之前的备份控制文件来做恢复。

 

1.备份控制文件

 

SQL> alter database backup controlfile to ''''e:\control.ctl'''';

 

数据库已更改。

 

2.使用create tablespace或者alter tablespace add datafile给数据库添加数据文件

 

SQL> create tablespace test

  2  datafile ''''E:\ORACLE\ORADATA\NING\TEST01.DBF'''' size 10M,

  3  ''''E:\ORACLE\ORADATA\NING\TEST02.DBF'''' size 10M;

 

表空间已创建。

 

3.shutdown后将现在的控制文件删除

 

4.startup数据库

 

报错:ORA-00205: error in identifying controlfile, check alert log for more info

 

5.将备份的控制文件restore

 

6.使用备份控制文件做恢复

 

SQL> recover database using backup controlfile;

 

ORA-00283: 恢复会话因错误而取消

ORA-01244: 未命名的数据文件由介质恢复添加至控制文件

ORA-01110: 数据文件 5: ''''E:\ORACLE\ORADATA\NING\TEST01.DBF''''

ORA-01110: 数据文件 6: ''''E:\ORACLE\ORADATA\NING\TEST02.DBF''''

 

此时,查看v$datafile可以看到有两个unname文件

SQL> select name from v$datafile;

 

NAME

-------------------------------------------

 

E:\ORACLE\ORADATA\NING\SYSTEM01.DBF

E:\ORACLE\ORADATA\NING\UNDOTBS01.DBF

E:\ORACLE\ORADATA\NING\SYSAUX01.DBF

E:\ORACLE\ORADATA\NING\USERS01.DBF

C:\WINDOWS\SYSTEM32\UNNAMED00005

C:\WINDOWS\SYSTEM32\UNNAMED00006

 

查看alert_sid.log,可以看到如下内容

 

File #5 added to control file as ''''UNNAMED00005''''. Originally created as:

''''E:\ORACLE\ORADATA\NING\TEST01.DBF''''

File #6 added to control file as ''''UNNAMED00006''''. Originally created as:

''''E:\ORACLE\ORADATA\NING\TEST02.DBF''''

[1] [2] [3]  下一页

打印本文 打印本文 关闭窗口 关闭窗口