Oracle Data Guard会主动对Hot数据(数据正被读取或修改)执行验证, 无论是primary还是standby,但对于那些Cold数据不会做任何检查和校验。所以在12.2版本中,引入了dbms_comp来验证校验Hot 和 Cold数据, 其可以确保standby端没有任何corruption,switchover 或failover后变成primary角色后可以正常运行。
执行DBMS_DBCOMP可以检测primary和standby的所有数据块,并进行一致性比较和standby写丢失。
 
SQL> select * from scott.emp;
select * from scott.emp
*
ERROR at line 1:
ORA-65478: shadow lost write protection - found lost write
 
相应的alertlog消息:
ERROR  - I/O type:buffered I/O found lost write in block with afn:4 rdba:1000086. Expected
SCN:0x0000000000077d42 SCN in block:0x000000000007798b, approx current SCN:0x00000000000780d2, RAC instance:1
 
      错误消息提到:其期望的scn:0x77d42即490818,而块读取却是scn 0x7798b即489867.    这意味着与上一次相比,Oracle收到了一个过时的版本 检查点(在SCN 490818)。这就表明写丢失。由于实际写入发生
在永久存储上,在Oracle RDBMS范围之外,我们需要进一步检查操作系统,卷管理或存储层,是导致丢失写入的实际原因。
       当I / O子系统确认块写入完成时,发生数据块写丢失,但是写入并没有发生在永久存储器中。在随后的块中读取中,I / O子系统返回陈旧版本的数据块,可能用于更新数据库其他的块,从而造成corruption。
 
用法:
例如:我们有一个主数据库,它有一个或多个备数据库。当数据库挂载或打开时,在主数据库或备用数据库上执行DBMS_DBCOMP.DBCOMP
 
DBMS_DBCOMP.DBCOMP
datafile IN varchar2,
outputfile IN varchar2,
block_dump IN布尔值
);
datafile -- 它可以是数据文件名或数据文件号。指定“ALL”来比较所有数据文件
其输出结果,可以帮助我们确定主备端是否存在潜在的block corruption。

12.2Data Guard新特性--使用DBMS_DBCOMP.DBCOMP数据比较的更多相关文章

  1. 浅析Oracle 12c中Data Guard新特性

    浅析Oracle 12c中Data Guard新特性   写在前面 无论是做Oracle运维的小伙伴还是老伙伴,想必对Oracle数据库的数据级灾备核心技术—Data Guard是再熟悉不过了!这项从 ...

  2. [转]JDK1.0到12各版本新特性

    原文链接 JDK Version 1.0 1996-01-23 Oak(橡树) 初代版本,伟大的一个里程碑,但是是纯解释运行,使用外挂JIT,性能比较差,运行速度慢.JDK Version 1.1 1 ...

  3. Oracle Data Integrator 12c (12.1.2)新特性

    改进特性如下: 基于流程界面的声明式设计 在12c中,以前的接口(interface)已经改为映射(mapping),新的基于流程声明的设计方式更灵活,也更容易使用.在12c中,映射的实现是通过使用J ...

  4. SQL2012新特性一次一个数据块----特殊的查询分页

    对于数据库人员来说,在软件项目开发的过程中,或多或少的不可避免的就是经常遇到类似“UI查询结果设计”这样的说法,当听到UI设计的时候,多数人的第一反应是“靠!关我毛事!~这是其他人的问题!”. 然而, ...

  5. Oracle Database 12.2新特性详解

    在2015年旧金山的Oracle OpenWorld大会上,Oracle发布了Database 12.2的Beta版本,虽然Beta版本只对部分用户开放,但是大会上已经公布了12.2的很多重要的新特性 ...

  6. 5分钟了解Java 12 八大新特性

    Java 12 终于发布了,我们一起来看一看 Java 12 中的新特性.通过本文可以在5分钟内快速了解 Java 12 新特性. 1 Switch 表达式 使用Java 12,switch不仅可以作 ...

  7. Java 12 新特性

    Java 12 已如期于 3 月 19 日正式发布,此次更新是 Java 11 这一长期支持版本发布之后的一次常规更新,截至目前,Java 半年为发布周期,并且不会跳票承诺的发布模式,已经成功运行一年 ...

  8. paip.php 5.0 5.3 5.4 5.5 -6.0的新特性总结与比较

    paip.php 5.0 5.3 5.4  5.5 -6.0的新特性总结与比较 PHP5的新特性 2 · 对象的参照过渡是默认的(default) 3 · 引入访问属性的限制 3 · 引入访问方法的限 ...

  9. Hello——Java10新特性,请了解一下

    2018年3月20日,Java 10 正式发布! 相关地址: 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/index.ht ...

随机推荐

  1. 【软件工程实践】第二次作业:分布式版本控制系统Git的安装与使用

    1.下载安装配置用户名和邮箱. 2. 创建工作目录并通过git init命令把这个目录变成Git可以管理的仓库. 3. 在工作目录下准备文本文件,建议下载Notepad++代替记事本. 4. 组合用g ...

  2. mongodb-手写mongoclient加入到springmvc中

    由于一个项目使用的是springmvc3.x版本, mongodb使用的为3.x版本, 所以springmvc继承的mongodb-data并不可用, 只能自己手写一个mongoclient并加入到s ...

  3. 多流向算法GPU并行化

    和导师在Computers & Geosciences上发表的关于多流向算法GPU并行化的文章(SCI, IF=1.834). 论文:http://sourcedb.igsnrr.cas.cn ...

  4. sublime text3怎么让左侧显示目录树

    在前端开发中(包括Node.js开发),经常会使用sublime text,但之前一直不知道别人是怎么让左侧显示目录树,故特意在此记录一下. View ->Side Bar ->Show ...

  5. ibatis中的cdata和xml中cdata的含义

    ibatis的cdata用于sqlmap文件中,二sqlmap本身就是xml文件,即解析cdata的方法与xml文件的cdata相同. 简单来说:cdata就是用来表明纯文本的,如果没有这个的话 &l ...

  6. 【.Net】含Unicode的字符串截断 VB.NET C#

    Function AnsiLeftB(ByVal strArg As String, ByVal arg1 As Integer) As String Dim unicodeEncoding As E ...

  7. jenkins-node-pipeline

    Jenkins node创建 1.jenkins搭建参考我的另外一篇文章:    http://www.cnblogs.com/cuishuai/p/7544775.html 2.搭建完成后登录,选择 ...

  8. 微信小程序开发,服务器端获取不到请求参数

    微信的request请求请求方式为 GET 时,可以在后台获取到请求的参数 userName 当为POST请求时则获取不到 userName 参数 解决方案是 在 设置一下 headers 里添加 ' ...

  9. 用Shell编写项目发布脚本

    1.首先在github上创建一个测试用的仓库 2.本地编写一个可以运行的测试项目,上传至github 3.链接服务器,编写脚本如下:注意:编写前需要在服务器上安装git和maven 执行build_c ...

  10. 针对多类型数据库,集群数据库的有序GUID

    一.背景 常见的一种数据库设计是使用连续的整数为做主键,当新的数据插入到数据库时,由数据库自动生成.但这种设计不一定适合所有场景. 随着越来越多的使用Nhibernate.EntityFramewor ...