li
  当前位置:主页 > 备份恢复 > 文章内容
li
RMAN备份恢复之归档日志对BLOCKRECOVER的影响
来源: http://yangtingkun.itpub.net/  作者: yangtingkun    时间:2008-01-26   阅读:10  
本文章共4314字,分3页,当前第1页,快速翻页:
 

上面一篇简单的介绍了一下RMAN的BLOCKRECOVER的用法,这篇打算介绍一下缺失归档日志对BLOCKRECOVER的影响。


为了演示归档对BLOCKRECOVER的影响,先构造一个例子:

RMAN> backup tablespace tools;

启动 backup 于 16-6月 -07
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00005 name=F:ORACLEORADATATEST1TOOLS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 16-6月 -07
通道 ORA_DISK_1: 已完成段 1 于 16-6月 -07
段 handle=F:ORACLEORACLE920DATABASEHIKFE30_1_1 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:03
完成 backup 于 16-6月 -07

首先备份一下表空间,这个表空间的备份用来作为BLOCKRECOVER的全备份基础。

SQL> CREATE TABLE TEST TABLESPACE TOOLS AS SELECT ROWNUM ID, A.* FROM DBA_OBJECTS A;

表已创建。

SQL> SELECT COUNT(*) FROM TEST;

COUNT(*)
----------
28036

SQL> SELECT ROWID FROM TEST WHERE ID = 1000;

ROWID
------------------
AAAHApAAFAAAAAbAA8

SQL> SELECT ID FROM TEST
2 WHERE ROWID >= 'AAAHApAAFAAAAAbAAA'
3 AND ROWID < 'AAAHApAAFAAAAAcAAA';

ID
----------
940
941
942
943
944
945
946
947
.
.
.
1004
1005
1006

已选择67行。

SQL> SELECT DISTINCT DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID),
2 DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)
3 FROM TEST
4 WHERE ID >= 940
5 AND ID <= 1006;

DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID) DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)
------------------------------------ ------------------------------------
5 27

SQL> ALTER SYSTEM SWITCH LOGFILE;

系统已更改。

SQL> SELECT MAX(SEQUENCE#) FROM V$ARCHIVED_LOG;

MAX(SEQUENCE#)
--------------
321

SQL> UPDATE TEST SET OBJECT_NAME = LOWER(OBJECT_NAME) WHERE ID = 1000;

IXDBA.NET社区论坛
已更新 1 行。

SQL> COMMIT;

提交完成。

SQL> ALTER SYSTEM SWITCH LOGFILE;

系统已更改。

SQL> DELETE TEST WHERE ID = 1;

已删除 1 行。

SQL> COMMIT;

提交完成。

SQL> ALTER SYSTEM SWITCH LOGFILE;

系统已更改。

SQL> UPDATE TEST SET OBJECT_TYPE = 'TEST' WHERE ID = 10000;

已更新 1 行。

SQL> COMMIT;

提交完成。

SQL> ALTER SYSTEM SWITCH LOGFILE;

系统已更改。

SQL> CREATE TABLE TEST2 (ID NUMBER);

表已创建。

SQL> INSERT INTO TEST2 VALUES (1);

已创建 1 行。

SQL> ALTER SYSTEM SWITCH LOGFILE;

系统已更改。

SQL> ALTER SYSTEM SWITCH LOGFILE;

系统已更改。

SQL> ALTER SYSTEM SWITCH LOGFILE;

系统已更改。

SQL> ALTER SYSTEM SWITCH LOGFILE;

系统已更改。

SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE SEQUENCE# > 321;

NAME
------------------------------------------------------------
F:ORACLEORADATATEST1ARCHIVELOGARC00322.001
F:ORACLEORADATATEST1ARCHIVELOGARC00323.001
F:ORACLEORADATATEST1ARCHIVELOGARC00324.001
F:ORACLEORADATATEST1ARCHIVELOGARC00325.001
F:ORACLEORADATATEST1ARCHIVELOGARC00326.001
F:ORACLEORADATATEST1ARCHIVELOGARC00327.001
F:ORACLEORADATATEST1ARCHIVELOGARC00328.001

已选择7行。

SQL> SELECT SEQUENCE# FROM V$LOG;

SEQUENCE#
----------
328
329
327

首先建立一张测试表,在这个表中,ID在940和1006之间的记录存储在DATAFILE 5 BLOCK 27中。在归档322中记录了TEST表的ID等于1000的记录的更新,这个更新发生在DATAFILE 5 BLOCK 27上。随后在归档323中,删除了ID等于1的记录,这条记录与BLOCK 27无关。在归档324中,更新了ID等于10000的记录,这个修改与BLOCK 27也无关。在归档325中,新建TEST2表,并插入数据。归档326就是一个空文件。



阅读更多内容1 · 2 · 3 · 下一页>>


  上一篇: RMAN备份多个备份集到带库的小bu...   下一篇: RMAN备份恢复之BLOCKRECOVER
li
 §相关评论  
 热点文章

·Oracle数据库远程复制与异地容
·Oracle 11g备份恢复功能增强
·UNDO表空间的ORA-1122错误解决
·UNDO表空间的ORA-1122错误解决
·UNDO表空间的ORA-1122错误解决
·使用Flashback Query 恢复误删
·如何开启/关闭oracle的归档
·Rman的format格式中的%s类似的
·怎么样创建RMAN恢复目录
·ORA-01843:无效的月份,这个是
·ORA-01843:无效的月份
li
 编辑推荐
·Oracle数据库远程复制与异地容
·Oracle 11g备份恢复功能增强
·UNDO表空间的ORA-1122错误解决
·UNDO表空间的ORA-1122错误解决
·UNDO表空间的ORA-1122错误解决
·使用Flashback Query 恢复误删
·如何开启/关闭oracle的归档
·Rman的format格式中的%s类似的
·怎么样创建RMAN恢复目录
·ORA-01843:无效的月份,这个是
·ORA-01843:无效的月份
li
 相关篇章
·RMAN备份多个备份集到带库的小bu...
·RMAN备份恢复之控制文件的恢复(...
·利用NETBACKUP将备份写到磁盘上
·RMAN备份恢复之SPFILE的恢复(一...
·RMAN备份恢复之控制文件的恢复(...
·RMAN备份恢复之SPFILE的恢复(二...
·RMAN备份恢复之控制文件的恢复(...
·RMAN环境变量的设置
·RMAN备份恢复之NETBACKUP客户端存...
·RMAN退出时出现RMAN-6900信息
·RMAN备份恢复之BLOCKRECOVER
·RMAN备份的并行
·使用JOB定时备份数据库
·Rman恢复出现Segment Fault
·RMAN备份过程中调整系统时间的BU...
·RMAN的PIPE接口(二)
·RMAN的PIPE接口
·同一个表空间能否被多个数据库同...
·重建控制文件会导致密码文件发生...
·RMAN备份过程中调整系统时间的BU...
 
li
设为首页 | 关于我们 | 技术服务 | 收藏本站 | 网站地图 | 联系方式 | 本站友情连接