DataGuard写测试实验步骤及总结

【说明】本文档介绍DataGuard在最大性能模式下面的写测试实验;

启用Dataguard的日志传输命令:

ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2='ENABLE';    启用日志传输                                                                  

ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2='DEFER';     关闭日志传送

 

测试步骤:

创建表t,然后在启用日志和关闭日志情况下插入数据的时间对比

 

脚本:

 

drop table t purge;

create table t(x int); 在源数据库创建表t

alter system flush shared_pool; 清空shared_pool的数据
 


create or replace procedure proc1 创建proc1

as

begin

  for i in 1 .. 100000

    loop

      execute immediate

      'insert into t values('||i||')';

      commit;

    end loop;

end;

/

 

SQL> set timing on; 打开自动计时

SQL> exec proc1; 执行脚本

 
 

结果:

次数
重做日志大小:50M
重做日志大小:500M

插入数据量:100000
插入数据量:500000
插入数据量:500000

关闭DG
启动DG
关闭DG
启动DG
关闭DG
启动DG

第一次
00:00:55.58
00:00:58.91
00:04:55.82
00:05:57.37
00:04:49.98
00:04:43.35

第二次
00:00:52.87
00:00:52.98
00:04:45.33
00:06:09.11
00:04:34.19
00:04:40.98

第三次
00:00:55.10
00:00:52.70
00:05:13.32
00:06:06.60
00:04:35.46
00:04:42.68

 

总结:

1、当插入数据量较小的情况下,关闭DG和启动DG的情况下,并不影响系统的效率;

2、进行大量数据插入的情况下,启动DG会严重影响系统的性能;

3、调整重做日志的大小到合理的大小,可以避免DG对系统效率的影响;

 

原因分析:最大性能模式下按照道理应该不会影响系统的性能的,但是当日志切换速度太快的时候就会导致一直触发检查点的发生,就会导致REDO BUFFER的信息一直写入到磁盘中,LRS来不及从内存去读取REDO LOG的信息,就需要从磁盘中去读取信息,这个过程会影响IO的性能;

所以IO的争用导致系统性能的下降;

 

以上纯属个人的判断,尚未找到相应的支持论点。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值