Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5699403
  • 博文数量: 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-01 23:40:43

描述:
数据库关闭状态,需要恢复System datafiles,Undo segment datafiles,Whole database
在这里,我们给scott用户创建一个表,然后破坏undo,恢复后,看看表中的数据还在不在
1) SQL>  conn sys/oracle as sysdba
   SQL> startup
2) SQL> create table scott.com100(n1 number);
   SQL> insert into scott.com100 values(1);
   SQL> commit;
   SQL> alter system switch logfile;
   SQL> insert into scott.com100 values(2);
   SQL> shutdown abort
3) 此时,把undo破坏
   在‘服务‘中,将OracleServiceORA停止
    删除(OS)undo文件(UNDO01.DBF)
4) 在‘服务‘中,将OracleServiceORA启动
   SQL> shutdown immediate
5) conn / as sysdba
startup
ORACLE 例程已经启动。
Total System Global Area  135338868 bytes
Fixed Size                   453492 bytes
Variable Size             109051904 bytes
Database Buffers           25165824 bytes
Redo Buffers                 667648 bytes
数据库装载完毕。
ORA-01157: 无法标识/锁定数据文件 10 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 10: 'D:\ORACLE\ORADATA\ORA\UNDO01.DBF'
(查看警告日志:
Errors in file D:\oracle\admin\ora\bdump\oraDBW0.TRC:
ORA-01157: cannot identify/lock data file 10 - see DBWR trace file
ORA-01110: data file 10: 'D:\ORACLE\ORADATA\ORA\UNDO01.DBF'
ORA-27041: unable to open file
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。)
6) 恢复:
SQL> SHUTDOWN ABORT
将备份的undo01.dbf copy回去
SQL> STARTUP MOUNT
SQL> recover database(或者recover datafile 9//或者recover'D:\ORACLE\ORADATA\ORA\UNDO01.DBF')
SQL> alter database open;
SQL> select * from scott.com1;(UNDO表空间用来处理事务,比如由用户发起的SQL查询等等操作均需要通过UNDO表空间起作用)
        N1
----------
         1
 
阅读(1974) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~