第三章.了解与恢复相关的信息
1、理解报警日志文件
报警日志文件一般记载了数据库的启动/关闭信息,归档信息,备份信息,恢复信息,常见错误信息,部分数据库修改记录等。一般令名规则为Alrt.log或Alrt.log,如我的测试数据库的报警日志文件的名称为testalrt.log。
报警日志文件的路径是根据初始化参数background_dump_dest来决定的,如在我的机器上,该参数值为D:\Oracle\admin\test\bdump,那么,你就可以在该路径下找到该文件。
2、后台进程跟踪文件
后台进程跟踪文件的路径与报警日志文件的路径一致,在某些情况下,你可以通过后台跟踪文件的信息了解更多的需要恢复的信息。如在数据库需要恢复的时候,报警日志文件中常有这样的语句:
Errors in file D:\Oracle\admin\test\bdump\testDBW0.TRC:
ORA-01157: cannot identify/lock data file 1 - see DBWR trace file
通过提示的DBWR跟踪文件,可以查询到更详细的信息。
3、v$recover_file与v$recovery_log
这是两个动态性能视图,可以在mount下查看,通过这两个视图,你可以了解详细的需要恢复的数据文件与需要使用到的归档日志。
第四章.数据库恢复案例
4.1非归档模式下的备份与恢复
备份方案:采用OS冷备份
1.连接数据库并创建测试表
SQL> connect internal/password as sysdba;
Connected.
SQL> create table test(a int);
Table created
SQL> insert into test values(1);
1 row inserted
SQL> commit;
Commit complete
2.备份数据库
SQL> @coldbak.sql或在DOS下svrmgrl @coldbak.sql
3.再插入记录
SQL> insert into test values(2);
1 row inserted
SQL> commit;
Commit complete
SQL> select * from test;
A
-------------------
1
2
4.关闭数据库
SQL> shutdown immediate;
Database closed.
Database dismounted.
Oracle instance shut down.
5.毁坏一个或多个数据文件,如删除user01.dbf
C:\>del D:\Oracle\ORADATA\TEST\USERS01.DBF
模拟媒体毁坏。
6.重新启动数据库,会发现如下错误
SQL> startup
Oracle instance started.
Total System Global Area102020364 bytes
Fixed Size70924 bytes
Variable Size85487616 bytes
Database Buffers16384000 bytes<