数据库备份与恢复测试(4)

文章作者 100test 发表时间 2007:09:06 12:57:07
来源 100Test.Com百考试题网


################################################
# [1.7] 数据文件损坏,且没有备份,没有备份控制文件,
# 且其他数据文件备份中都是在该数据文件创建后
# 的备份
################################################
################################################
# [测试1](resetlogs前创建的数据文件),数据文件丢失,没有备份,控制文件损坏,有备份控制文件,但备份控制文件后于该文件重建日期
# 使用resetlogs打开数据库,所以没有数据文件自创建以来所有的日志,
# 因为前面的日志被截取了,(所以resetlog后必须要有备份,
# 除非是resetlogs后创建的数据文件,可以通过create datafile来恢复)
# 当然如果有resetlogs后的控制文件及相关的数据,也可以完全恢复,参见1.12
#################################################
还原原来的数据文件和控制文件
然后SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 101784276 bytes
Fixed Size 453332 bytes
Variable Size 75497472 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
SQL> recover database using backup controlfile until cancel.
ORA-00279: 更改 1069386 (在 02/25/2005 15:47:59 生成) 对于线程 1 是必需的
ORA-00289: 建议: C:\ORACLE\ORA92\RDBMS\ARC00013.001
ORA-00280: 更改 1069386 对于线程 1 是按序列 # 13 进行的
指定日志: {=suggested | filename | AUTO | CANCEL}
auto >使用auto恢复也是成功
ORA-00308: 无法打开存档日志 C:\ORACLE\ORA92\RDBMS\ARC00013.001
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
ORA-00308: 无法打开存档日志 C:\ORACLE\ORA92\RDBMS\ARC00013.001
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
SQL> recover database using backup controlfile until cancel. >这个cancel是表示每次应用一个日志时都提示一下,直到输入cancel后结束
ORA-00279: 更改 1069386 (在 02/25/2005 15:47:59 生成) 对于线程 1 是必需的
ORA-00289: 建议: C:\ORACLE\ORA92\RDBMS\ARC00013.001
ORA-00280: 更改 1069386 对于线程 1 是按序列 # 13 进行的
指定日志: {=suggested | filename | AUTO | CANCEL}
cancel --输入cancel恢复成功 >cancel选项允许每次前滚一个日志文件,当需要停止恢复时,输入cancel
,在这种方式下不会自动运用联机日志文件.
介质恢复已取消。
SQL> alter database open resetlogs.
数据库已更改。

SQL> 0select name,status from v$datafile.
NAME STATUS
------------------------------------------------------------ -------
C:\ORACLE\ORADATA\TESTDB\SYSTEM01.DBF SYSTEM
C:\ORACLE\ORADATA\TESTDB\UNDOTBS01.DBF ONLINE
C:\ORACLE\ORADATA\TESTDB\INDX01.DBF ONLINE
C:\ORACLE\ORADATA\TESTDB\TOOLS01.DBF ONLINE
C:\ORACLE\ORADATA\TESTDB\USERS01.DBF ONLINE
C:\ORACLE\ORADATA\TESTDB\TOOLS02.DBF ONLINE
已选择6行。
SQL> create table arch (status varchar(2)) tablespace users.
表已创建。
SQL> alter system switch logfile.
系统已更改。
SQL> insert into arch 0select ok from dba_objects.
已创建6166行。
SQL> commit.
提交完成。
SQL> insert into arch 0select ok from dba_objects.
已创建6166行。
SQL> commit.
提交完成。
SQL> alter system switch logfile.
系统已更改。
SQL> insert into arch 0select no from dba_objects.
已创建6166行。
SQL> commit.
提交完成。
在数据库打开的状况下用ULTRAEDIT破坏文件USERS01.DBF
SQL> shutdown abort
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 101784276 bytes
Fixed Size 453332 bytes
Variable Size 75497472 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
ORA-01991: ???????C:\oracle\ora92\DATABASE\PWDtestdb.ORA
SQL> alter database datafile C:\ORACLE\ORADATA\TESTDB\USERS01.DBF offline.
数据库已更改。
SQL> alter database create datafile C:\ORACLE\ORADATA\TESTDB\USERS01.DBF .
alter database create datafile C:\ORACLE\ORADATA\TESTDB\USERS01.DBF
*
ERROR 位于第 1 行:
ORA-01181: ??5????? RESETLOGS ???????????
ORA-01110: ???? 5: C:\ORACLE\ORADATA\TESTDB\USERS01.DBF


相关文章


细化解析如何共享Oracle数据库身份空间
数据库备份与恢复测试(5)
数据库备份与恢复测试(4)
数据库备份与恢复测试(3)
数据库备份与恢复测试(2)
数据库备份与恢复测试(1)
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛