oracle 11g 延迟验证,oracle 11g新特性-控制文件延迟备份 | 信春哥,系统稳,闭眼上线不回滚!...

同学分享了一篇关于11gR2控制文件延迟备份的文章,看了之后感觉很有意思,就测试了下。在10g版本,开启归档模式并且在RMAN中配置控制文件自动备份后,当数据库结构发生变化,就会触发控制文件的备份,并且记录在告警日志中,如下测试:

10g版本测试:

[oracle@source flash_recovery_area]$ rman target /

Recovery Manager: Release 10.2.0.4.0 - Production on Sun Nov 10 18:35:34 2013

Copyright (c) 1982, 2007, Oracle. All rights reserved.

connected to target database: SOURCE (DBID=2948128830)

RMAN> show CONTROLFILE AUTOBACKUP;

using target database control file instead of recovery catalog

RMAN configuration parameters are:

CONFIGURE CONTROLFILE AUTOBACKUP ON;

SQL> archive log list

Database log mode Archive Mode

Automatic archival Enabled

Archive destination USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence 23

Next log sequence to archive 25

Current log sequence 25

下面创建表空间,看看控制文件自动备份情况。

SQL> create tablespace ts_test datafile '/u01/app/oracle/oradata/source/ts_test01.dbf' size 10M;

Tablespace created.

告警日志已经记录控制文件自动备份的信息。

Sun Nov 10 18:37:36 2013

create tablespace ts_test datafile '/u01/app/oracle/oradata/source/ts_test01.dbf' size 10M

Sun Nov 10 18:37:37 2013

Starting control autobackup

db_recovery_file_dest_size of 10240 MB is 0.07% used. This is a

user-specified limit on the amount of space that will be used by this

database for recovery-related files, and does not reflect the amount of

space available in the underlying filesystem or ASM diskgroup.

Control autobackup written to DISK device

handle '/u01/app/oracle/flash_recovery_area/SOURCE/autobackup/2013_11_10/o1_mf_s_831148657_97yrhl82_.bkp'

Completed: create tablespace ts_test datafile '/u01/app/oracle/oradata/source/ts_test01.dbf' size 10M

删除这个新建的表空间,看看控制文件备份情况。

SQL> drop tablespace ts_test;

Tablespace dropped.

告警日志中会立即出现控制文件自动备份的信息。

Sun Nov 10 18:38:16 2013

drop tablespace ts_test

Sun Nov 10 18:38:16 2013

Starting control autobackup

Control autobackup written to DISK device

handle '/u01/app/oracle/flash_recovery_area/SOURCE/autobackup/2013_11_10/o1_mf_s_831148696_97yrjrty_.bkp'

Completed: drop tablespace ts_test

到控制文件自动备份的路径下也可以看到这些备份文件。

[oracle@source 2013_11_10]$ pwd

/u01/app/oracle/flash_recovery_area/SOURCE/autobackup/2013_11_10

[oracle@source 2013_11_10]$ ls

o1_mf_s_831148657_97yrhl82_.bkp o1_mf_s_831148696_97yrjrty_.bkp

可见,在10g版本中,当数据库运行在归档模式,并且在RMAN中设置了控制文件自动备份,每当数据库结构发生变化的时候,都会立即触发控制文件的自动备份,那么在短时间内如果频繁修改数据库结构,就会多次备份控制文件,这样不但占用磁盘空间而且影响性能。

在11g版本,引入了控制文件延迟备份的特性,在数据库结构变化后,不会立马备份控制文件,而是在最后一次数据库结构发生变化6分钟后,再备份控制文件。

C:\Windows\system32>rman target /

恢复管理器: Release 11.2.0.1.0 - Production on 星期日 11月 10 17:18:34 2013

Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.

连接到目标数据库: DBDREAM (DBID=2326242578)

RMAN> show CONTROLFILE AUTOBACKUP;

使用目标数据库控制文件替代恢复目录

db_unique_name 为 DBDREAM 的数据库的 RMAN 配置参数为:

CONFIGURE CONTROLFILE AUTOBACKUP ON;

17:17:21 SQL> archive log list

数据库日志模式 存档模式

自动存档 启用

存档终点 D:\ARCH

最早的联机日志序列 1020

下一个存档日志序列 1022

当前日志序列 1022

删除一个表空间。

17:23:10 SQL> drop tablespace TBS16K INCLUDING CONTENTS;

表空间已删除。

看看告警日志信息。

Sun Nov 10 17:23:12 2013

drop tablespace TBS16K INCLUDING CONTENTS

Completed: drop tablespace TBS16K INCLUDING CONTENTS

告警日志只记录表空间被删掉,并没有关于控制文件自动备份的信息,而且也没有生成备份文件。几分钟后,生成了备份文件,告警日至依然没有这部分信息,但是在m000进程的trace文件里记录了这一过程。

Starting control autobackup

*** 2013-11-10 17:31:27.333

Control autobackup written to DISK device

handle 'D:\APP\STREAM\FLASH_RECOVERY_AREA\DBDREAM\AUTOBACKUP\2013_11_10\O1_MF_S_831144685_97YNMGJS_.BKP'

在闪回恢复区也可以看到控制文件的备份。

D:\app\stream\flash_recovery_area\dbdream\AUTOBACKUP\2013_11_10>dir/b

O1_MF_S_831144685_97YNMGJS_.BKP

既然11g在数据库结构发生变化后,延迟6分钟再备份控制文件,为的就是在频繁修改数据库结构时,不要每一次都备份控制文件,下面验证下。

17:34:56 SQL> drop tablespace TBS8K INCLUDING CONTENTS;

表空间已删除。

过几分钟,在修改下数据库结构。

17:39:56 SQL> alter tablespace users add datafile 'D:\APP\STREAM\ORADATA\DBDREAM\USERS02.dbf' size 10M;

表空间已更改。

果然,在17:46:30只备份了一次控制文件。

*** 2013-11-10 17:46:30.424

Control autobackup written to DISK device

handle 'D:\APP\STREAM\FLASH_RECOVERY_AREA\DBDREAM\AUTOBACKUP\2013_11_10\O1_MF_S_831145588_97YOHOO3_.BKP'

可见,在11gR2版本,控制文件自动备份是在最后一次数据库结果发生变化后的6分钟之后。12C版本是否也是这样呢?下面看下12C的测试。

[oracle@dbdream ~]$ rman target /

Recovery Manager: Release 12.1.0.1.0 - Production on Fri Aug 16 12:25:31 2013

Copyright (c) 1982, 2013, Oracle and/or its affiliates. All rights reserved.

connected to target database: DBDREAM (DBID=2364849259)

RMAN> show CONTROLFILE AUTOBACKUP;

using target database control file instead of recovery catalog

RMAN configuration parameters for database with db_unique_name DBDREAM are:

CONFIGURE CONTROLFILE AUTOBACKUP ON; # default

在12C版本,控制文件自动备份默认情况下就已经是开启状态了。

[oracle@dbdream ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on Fri Aug 16 12:27:51 2013

Copyright (c) 1982, 2013, Oracle. All rights reserved.

Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> archive log list

Database log mode Archive Mode

Automatic archival Enabled

Archive destination USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence 23

Next log sequence to archive 25

Current log sequence 25

下面看下12C是否也延续了11gR2的这个特性。

12:30:12 SQL> create tablespace ts_test12c datafile '/u01/app/oracle/oradata/DBDREAM/datafile/ts_test12c01.dbf' size 10m;

表空间已创建。

看下告警日志信息。

Fri Aug 16 12:30:15 2013

create tablespace ts_test12c datafile '/u01/app/oracle/oradata/DBDREAM/datafile/ts_test12c01.dbf' size 10m

Completed: create tablespace ts_test12c datafile '/u01/app/oracle/oradata/DBDREAM/datafile/ts_test12c01.dbf' size 10m

12C的告警日志和11gR2是一样的,只记录更改信息不记录控制文件的自动备份信息。在9分钟后,生成了备份信息,并且也在m000进程的trace文件里记录这一过程。

*** 2013-08-16 12:39:34.895

Control autobackup written to DISK device

handle '/u01/app/oracle/fast_recovery_area/DBDREAM/autobackup/2013_08_16/o1_mf_s_823610372_90vc85w1_.bkp'

看来12cR1版本这一点和11gR2是一样的,也采用控制文件延迟自动备份的功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值