当前位置: 首页 > news >正文

Oracle Data Guard延迟的原因(r11笔记第69天)

     Oracle Data Guard中很可能出现延迟的情况,而数据一旦出现延迟就意味着丢数据。退一步来说丢数据总比数据乱了好,但是回过头来,能不丢数据但是丢了,这就有些说不过去了。

    因为预防人为误操作等,可能有些环境中会特意设置一个延迟,基本就是下面的设置方法:

方法1:

alter database recover managed standby database delay 120 disconnect from session;方法2

alter system set log_archive_dest_3='service=db3 lgwr async delay=120 valid_for=(all_logfiles,all_roles)    我们这里所说的延迟是计划外的延迟,比如一个ADG的环境,案例应该是实时同步,但是却有数据同步出现延迟的情况。我自己碰到一些,还帮网友处理过几次。

    大体来说,10g和11g中的数据同步延迟场景还不大一样。

    在10g中如果一主两备的架构下,如果备1是在read only状态,则整个数据同步还是会延迟,需要手工切换日志才能增量同步。

   在11g中,倒不存在这样的限制了,因为是Active Data Guard的方式,所以可以在read only的基础上接收应用增量数据变化。但是延迟的问题依旧可能存在。

    我一个例子来说明,简单来说,如何判断一个Data Guard是Active Data Guard呢,可以用一个SQL语句来判定。

10:27:21 SQL>select current_scn from v$database;      随着时间的变化,SCN会发生变化,这和10g是一个鲜明的对比。

DGMGRL> show database verbose sol;      同时在备库的alert日志中查看却似乎看不出什么特别之处。我碰到一个环境,数据延迟时好时坏,很不稳定,听起来很棘手,我们来简单看看。

日志如下:

RFS[1]: Opened log for thread 1 sequence 476185 dbid 1210367666 branch 622336050   出现这种情况,基本可以断定是差一个归档。

   我们看看主备库的日志文件的情况。

SQL> select group#,bytes from v$standby_log;

 主库的online log情况:

SQL>  select group#,bytes,status from v$log    如果到了这里,想必就会清晰很多了,主库中的online log大小不一,看起来是经过了多次设置,估计最开始设置为200M,感觉有些小了,后面改进,设置成了500M,估计还是差强人意,就改成了1G。其实这个日志是可以做调整设置的,而不是一锤子买卖,肯定能修改。      

一个较为正常的备库的alert日志情况如下,假设归档设置是默认的情况下。会有下面的额外两行尤其需要关注,你可以看到standby log被引用。

RFS[1]: Selected log 23 for thread 1 sequence 476186 dbid 1210367666 branch 622336050Recovery of Online Redo Log: Thread 1 Group 23 Seq 476186 Reading mem 0    所以说,任何看起来复杂的问题的原因都会很简单,明确了问题,解决起来就会得心应手。

   

   

相关文章:

  • 那些年我们追过的拳皇 (r11笔记第76天)
  • 今天比较忙比较累
  • 换工作这件事(一)(r11笔记第81天)
  • 浅谈MySQL Group Replication(r11笔记第80天)
  • 分分钟搭建MySQL Group Replication测试环境(r11笔记第82天)
  • 当拳皇遇上数据库,会擦出什么样的火花?
  • 我的女儿二三事(六)(r11笔记第87天)
  • 古巨蜥好几吨重,但在我们智人祖先面前也是枉然 | 袁硕 一席第449位讲者
  • Oracle中的PGA监控报警分析(r11笔记第96天)
  • 学习笔记第11轮总结(r12笔记第1天)
  • MySQL中xtrabackup备份恢复全攻略(r12笔记第11天)
  • 压测工具swingbench和sysbench对比(r12笔记第13天)
  • 一个公众事件的简单思考(r12笔记第15天)
  • swingbench压测Oracle小记(r12笔记第20天)
  • 从杂技表演到日剧GBM(r12笔记第23天)
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • ➹使用webpack配置多页面应用(MPA)
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • CentOS7 安装JDK
  • JavaScript 基本功--面试宝典
  • mac修复ab及siege安装
  • node学习系列之简单文件上传
  • React Transition Group -- Transition 组件
  • Shell编程
  • spring-boot List转Page
  • 程序员最讨厌的9句话,你可有补充?
  • 当SetTimeout遇到了字符串
  • 观察者模式实现非直接耦合
  • 前言-如何学习区块链
  • 深度学习在携程攻略社区的应用
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 用Node EJS写一个爬虫脚本每天定时给心爱的她发一封暖心邮件
  • 主流的CSS水平和垂直居中技术大全
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • puppet连载22:define用法
  • (1)(1.9) MSP (version 4.2)
  • (1)常见O(n^2)排序算法解析
  • (八)c52学习之旅-中断实验
  • (每日持续更新)jdk api之FileReader基础、应用、实战
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (转)平衡树
  • (转载)跟我一起学习VIM - The Life Changing Editor
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .NET Core引入性能分析引导优化
  • .NET Framework 服务实现监控可观测性最佳实践
  • .net 生成二级域名
  • .net和php怎么连接,php和apache之间如何连接
  • ??eclipse的安装配置问题!??
  • @ModelAttribute 注解
  • @Query中countQuery的介绍
  • [ 云计算 | AWS 实践 ] Java 如何重命名 Amazon S3 中的文件和文件夹
  • [3300万人的聊天室] 作为产品的上游公司该如何?
  • [AutoSAR系列] 1.3 AutoSar 架构