仅仅丢失一个普通用户数据文件的恢复A(联机恢复)

*仅仅丢失一个普通用户数据文件的恢复A(联机恢复)

数据库的备份和恢复是个比较常见的问题,咱们系统的讨论一下,如何
  
我先来一个:D   
  
*仅仅丢失一个普通用户数据文件的恢复A(联机恢复)
  
(例如,丢失D:/BACKUPDB/USERS01.DBF)
准备工作
通过下面的工作,如果完全恢复,应该可以看到;insert into test1 values(2);
  
SQL> conn lunar/lunar
已连接。
SQL> select * from tab;
TESTBACKUP3                    TABLE
  
已选择 1 行。
  
SQL> create table test1
   2  (a number);
  
表已创建。
  
SQL> insert into test1 values(1);
  
已创建 1 行。
  
SQL> alter system switch logfile;
  
系统已更改。
  
SQL> commit;
  
提交完成。
  
SQL>  alter system switch logfile;
  
系统已更改。
  
SQL>  insert into test1 values(2);
  
已创建 1 行。
  
SQL> commit;
  
提交完成。
  
SQL>  alter system switch logfile;
  
系统已更改。
  
SQL> conn internal
已连接。
SQL> archive log list
数据库日志模式            存档模式
自动存档             启用
存档终点            d:/BACKUPDB/archive
最早的概要信息日志序列     3
下一个存档日志序列   5
当前日志序列           5
SQL>
  
shutdown abort关闭例程,模拟数据文件丢失
SQL> shutdown abort
ORACLE 例程已经关闭。
  
Mount数据库
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area   25856028 bytes
Fixed Size                    75804 bytes
Variable Size               8925184 bytes
Database Buffers           16777216 bytes
Redo Buffers                  77824 bytes
数据库装载完毕。
  
使损坏的数据文件脱机
SQL> alter database datafile 'D:/BACKUPDB/USERS01.DBF' offline;
  
数据库已更改。
  
打开数据库
SQL> alter database open;
  
数据库已更改。
  
SQL>
  
拷贝刚才热备的数据文件(USERS01.DBF)
恢复损坏的数据文件
SQL> recover datafile  'D:/BACKUPDB/USERS01.DBF';
ORA-00279: ?? 424116 (? 10/20/2002 20:42:04 ??) ???? 1 ????
ORA-00289: ??: D:/BACKUPDB/ARCHIVE/BACKUPT001S00001.ARC
ORA-00280: ?? 424116 ???? 1 ???? # 1 ???
  
指定日志: { =suggested | filename | AUTO | CANCEL}
auto
ORA-00279: ?? 424125 (? 10/20/2002 20:44:14 ??) ???? 1 ????
ORA-00289: ??: D:/BACKUPDB/ARCHIVE/BACKUPT001S00002.ARC
ORA-00280: ?? 424125 ???? 1 ???? # 2 ???
ORA-00278: ??????????? 'D:/BACKUPDB/ARCHIVE/BACKUPT001S00001.ARC'
  
ORA-00279: ?? 424135 (? 10/20/2002 21:55:35 ??) ???? 1 ????
ORA-00289: ??: D:/BACKUPDB/ARCHIVE/BACKUPT001S00003.ARC
ORA-00280: ?? 424135 ???? 1 ???? # 3 ???
ORA-00278: ??????????? 'D:/BACKUPDB/ARCHIVE/BACKUPT001S00002.ARC'
  
已应用的日志。
完成介质恢复。
SQL>
  
使恢复完成的数据文件联机
SQL>  alter database datafile 'D:/BACKUPDB/USERS01.DBF' online;
  
Database altered.
  
验证恢复的结果:完全恢复
SQL> select * from tab;
  
TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
TEST1                          TABLE
TESTBACKUP3                    TABLE
  
SQL> select * from test1;
  
          A
----------
          1
          2
  
说明:
1.  shutdown abort关闭例程,模拟数据文件丢失   
2.  Mount数据库   
3.  使损坏的数据文件脱机   
4.  打开数据库   
5.  拷贝刚才热备的数据文件(USERS01.DBF)   
6.  恢复损坏的数据文件   
7.  使恢复完成的数据文件联机

 

http://www.cnoug.org/viewthread.php?tid=85&highlight=%2Blunar

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值