丢失全部数据文件的恢复(不包括control和redo)

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

 

 

 

丢失全部数据文件的恢复

(不包括controlredo

 

 

 

 

 

作者:张大鹏(Lunar

                           Email:  moonlunar@163.com

                            MSN:  lunar52@hotmail.com

 

 

 

 

 

热备数据库

C:/>sqlplus "/ as sysdba"

 

SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 2 5 17:39:48 2002

 

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

 

 

连接到:

Oracle9i <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

 

SQL> @D:/hot_backup/hotbackup_for_win

已复制         1 个文件。

已复制         1 个文件。

已复制         1 个文件。

已复制         1 个文件。

已复制         1 个文件。

已复制         1 个文件。

已复制         1 个文件。

已复制         1 个文件。

SQL> host copy E:/oracle/oradata/test/archive/*.* D:/hot_backup/archive

E:/oracle/oradata/test/archive/1_74.ARC

E:/oracle/oradata/test/archive/1_75.ARC

E:/oracle/oradata/test/archive/1_76.ARC

E:/oracle/oradata/test/archive/1_77.ARC

E:/oracle/oradata/test/archive/1_78.ARC

E:/oracle/oradata/test/archive/1_79.ARC

E:/oracle/oradata/test/archive/1_80.ARC

E:/oracle/oradata/test/archive/1_81.ARC

E:/oracle/oradata/test/archive/1_82.ARC

E:/oracle/oradata/test/archive/1_83.ARC

E:/oracle/oradata/test/archive/1_84.ARC

E:/oracle/oradata/test/archive/1_85.ARC

已复制        12 个文件。

 

SQL> host dir D:/hot_backup/archive

 驱动器 D 中的卷是 PROGRAMS

 卷的序列号是 A06D-D424

 

 D:/hot_backup/archive 的目录

 

2002-02-04  13:59       <DIR>          .

2002-02-04  13:59       <DIR>          ..

2002-02-05  15:29                2,560 1_74.ARC

2002-02-05  15:29                1,024 1_75.ARC

2002-02-05  15:29                1,024 1_76.ARC

2002-02-05  15:33               45,056 1_77.ARC

2002-02-05  16:37               46,080 1_78.ARC

2002-02-05  16:38                1,536 1_79.ARC

2002-02-05  16:46                1,536 1_80.ARC

2002-02-05  16:54              142,848 1_81.ARC

2002-02-05  16:54                1,024 1_82.ARC

2002-02-05  16:54                2,560 1_83.ARC

2002-02-05  17:33              109,568 1_84.ARC

2002-02-05  17:43              177,152 1_85.ARC

              12 个文件        531,968 字节

               2 个目录  1,622,589,440 可用字节

 

SQL> archive log list;

数据库日志模式            存档模式

自动存档             启用

存档终点            e:/oracle/oradata/test/archive

最早的概要日志序列     83

下一个存档日志序列   86

当前日志序列           86

SQL>

 

 

模拟所有数据文件损坏的情况

SQL> host

Microsoft Windows 2000 [Version 5.00.2195]

(C) 版权所有 1985-2000 Microsoft Corp.

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/XDB01.DBF

已复制         1 个文件。

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/USERS01.DBF

已复制         1 个文件。

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/UNDOTBS01.DBF

已复制         1 个文件。

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/TOOLS01.DBF

已复制         1 个文件。

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/SYSTEM01.DBF

已复制         1 个文件。

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/RMAN01.DBF

已复制         1 个文件。

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/INDX01.DBF

已复制         1 个文件。

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/DRSYS01.DBF

已复制         1 个文件。

 

C:/>copy  AdobeWeb.log E:/oracle/ora92/test/TEMP01.DBF

改写 E:/oracle/ora92/test/TEMP01.DBF ? (Yes/No/All): all

已复制         1 个文件。

 

C:/>

C:/>dir E:/oracle/ora92/test/*.dbf

 驱动器 E 中的卷是 ORACLE

 卷的序列号是 707A-C50C

 

 E:/oracle/ora92/test 的目录

 

2002-01-15  19:02                    0 DRSYS01.DBF

2002-01-15  19:02                    0 INDX01.DBF

2002-01-15  19:02                    0 RMAN01.DBF

2002-01-15  19:02                    0 SYSTEM01.DBF

2002-01-15  19:02                    0 TEMP01.DBF

2002-01-15  19:02                    0 TOOLS01.DBF

2002-01-15  19:02                    0 UNDOTBS01.DBF

2002-01-15  19:02                    0 USERS01.DBF

2002-01-15  19:02                    0 XDB01.DBF

               9 个文件              0 字节

               0 个目录  2,702,540,800 可用字节

 

C:/>exit

 

SQL>

写数据库时报错,检查点产生时数据库会crash

SQL> conn / as sysdba

已连接。

SQL> archive log list;

数据库日志模式            存档模式

自动存档             启用

存档终点            e:/oracle/oradata/test/archive

最早的概要日志序列     83

下一个存档日志序列   86

当前日志序列           86

SQL> conn lunar/lunar

已连接。

SQL> select * from test;

        22

        23

       100

       111

 

已选择4行。

 

SQL> insert into test values(222);

insert into test values(222)

            *

ERROR 位于第 1 :

ORA-01115: 从文件 6 读取块时出现 IO 错误 ( # 35)

ORA-01110: 数据文件 6: 'E:/ORACLE/ORA92/TEST/USERS01.DBF'

ORA-27091: skgfqio: 无法进行 I/O 操作

ORA-27070: skgfdisp: 异步读取/写入失败

OSD-04006: ReadFile() 失败, 无法读取文件

O/S-Error: (OS 38) 到达文件结尾。

 

 

SQL> conn / as sysdba

已连接。

SQL> archive log list;

数据库日志模式            存档模式

自动存档             启用

存档终点            e:/oracle/oradata/test/archive

最早的概要日志序列     83

下一个存档日志序列   86

当前日志序列           86

SQL> alter system switch logfile;

 

系统已更改。

 

SQL> archive log list;

数据库日志模式            存档模式

自动存档             启用

存档终点            e:/oracle/oradata/test/archive

最早的概要日志序列     84

下一个存档日志序列   87

当前日志序列           87

SQL> alter system checkpoint;

alter system checkpoint

*

ERROR 位于第 1 :

ORA-03113: 通信通道的文件结束

 

 

SQL> conn / as sysdba

已连接到空闲例程。

SQL> 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-01122: 数据库文件 1 验证失败

ORA-01110: 数据文件 1: 'E:/ORACLE/ORA92/TEST/SYSTEM01.DBF'

ORA-01251: 文件号1的未知文件标题版本读取

 

 

SQL>

 

 

恢复数据库

把热备的所有数据文件拷贝回来

SQL> 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-01122: 数据库文件 1 验证失败

ORA-01110: 数据文件 1: 'E:/ORACLE/ORA92/TEST/SYSTEM01.DBF'

ORA-01251: 文件号1的未知文件标题版本读取

 

 

SQL> shutdown immediate;

ORA-01109: 数据库未打开

 

 

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> host

Microsoft Windows 2000 [Version 5.00.2195]

(C) 版权所有 1985-2000 Microsoft Corp.

 

C:/>copy D:/hot_backup/*.dbf E:/oracle/ora92/test

D:/hot_backup/SYSTEM01.DBF

改写 E:/oracle/ora92/test/SYSTEM01.DBF ? (Yes/No/All): all

D:/hot_backup/UNDOTBS01.DBF

D:/hot_backup/DRSYS01.DBF

D:/hot_backup/INDX01.DBF

D:/hot_backup/TOOLS01.DBF

D:/hot_backup/USERS01.DBF

D:/hot_backup/XDB01.DBF

D:/hot_backup/RMAN01.DBF

已复制         8 个文件。

 

C:/>exit

 

SQL>

 

 

装载但不打开数据库

SQL> startup mount

ORACLE 例程已经启动。

Total System Global Area  135338868 bytes

Fixed Size                   453492 bytes

Variable Size             109051904 bytes

Database Buffers           25165824 bytes

Redo Buffers                 667648 bytes

数据库装载完毕。

SQL>

 

 

恢复数据库

SQL> recover database;

完成介质恢复。

SQL>

 

打开数据库

SQL> alter database open;

 

数据库已更改。

 

SQL>

 

 

验证恢复

SQL> archive log list;

数据库日志模式            存档模式

自动存档             启用

存档终点            e:/oracle/oradata/test/archive

最早的概要日志序列     85

下一个存档日志序列   88

当前日志序列           88

SQL> conn lunar/lunar

已连接。

SQL> select * from test;

        22

        23

       100

       111

 

已选择4行。

 

SQL>

 

阅读更多
个人分类: oracle
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭