Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5725656
  • 博文数量: 745
  • 博客积分: 10075
  • 博客等级: 上将
  • 技术积分: 7716
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-29 12:09
文章分类

全部博文(745)

文章存档

2019年(1)

2016年(1)

2010年(31)

2009年(88)

2008年(129)

2007年(155)

2006年(197)

2005年(143)

分类: Oracle

2007-12-02 01:23:52

描述:
没有备份的情况下,恢复一个数据文件,不能是system或者undo段
准备
SQL> create tablespace testtbs datafile 'D:\oracle\oradata\ora\testtbs.dbf' size 1m;
SQL> alter system switch logfile;
SQL> create table scott.com4 (n1 number) tablespace testtbs;
SQL>  alter system switch logfile;
SQL> insert into scott.com4 values(1);
SQL> commit;
SQL>  alter system switch logfile;
搞坏 testtbs.dbf
  我这里采取的办法是先将testtbs 表空间offline,然后把这个重命名(鼠标执行)。
SQL> alter tablespace testtbs offline;
SQL> select * from scott.com4;
select * from scott.com4
                    *
ERROR 位于第 1 行:
ORA-00376: 此时无法读取文件 2
ORA-01110: 数据文件 2: 'D:\ORACLE\ORADATA\ORA\TESTTBS.DBF'
恢复

再造一个文件
SQL> ALTER DATABASE CREATE DATAFILE
  2   'D:\oracle\oradata\ora\testtbs.dbf';
 
SQL> recover tablespace testtbs;
SQL> recover tablespace testtbs;
ORA-00279: 更改 271420 (在 12/02/2007 01:19:22 生成) 对于线程 1 是必需的
ORA-00289: 建议: D:\ORACLE\ORADATA\ORA\AWU4.ARC''
ORA-00280: 更改 271420 对于线程 1 是按序列 # 4 进行的

指定日志: {=suggested | filename | AUTO | CANCEL}
已应用的日志。
完成介质恢复。
SQL> alter tablespace testtbs online;
SQL>  select * from scott.com4;
        N1
----------
         1
        
        
阅读(2791) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~