My Oracle Support Banner

12.2 Shadow Lost Write Protection -- 检测写丢失,无需配置备用数据库 (Doc ID 2297494.1)

Last updated on JULY 31, 2019

适用于:

Oracle Database - Enterprise Edition - 版本 12.2.0.1 和更高版本
Oracle Database Cloud Schema Service - 版本 N/A 和更高版本
Oracle Database Exadata Cloud Machine - 版本 N/A 和更高版本
Oracle Database Exadata Express Cloud Service - 版本 N/A 和更高版本
Oracle Cloud Infrastructure - Database Service - 版本 N/A 和更高版本
本文档所含信息适用于所有平台

用途

数据块写丢失发生在当 I/O 子系统已经反馈数据块写入已经完后,但是实际上数据块并没有正在的写入永久存储。在随后进行该块读取时,I/O 子系统返回一个旧的数据块,这个数据块可能用于更新其他的数据块,因此就会使数据产生错误。

12cR2 之前,为了检测写丢失,必须配置备用数据库,并且在主库和备库都设置 DB_LOST_WRITE_PROTECT 参数,该参数设置后,主库实例会在 redo log 中记录从处于读写模式的表空间中读取的数据块的信息。当备库在恢复过程中应用日志时,会读取相应的数据块信息并和重做日志中记录进行数据块的 SCN 对比,以来检测主库是否有发生写丢失。更详细的信息,请参考以下文档链接。

Enabling Lost Write Detection
http://docs.oracle.com/database/121/BRADV/rcmconfa.htm#BRADV89476

12 c版本 2,(例如 12.2),引入了一个新特性"Shadow Lost Write Protection",该特性可以在主库直接进行数据块写丢失检测,而无需配置备用数据库。即使配置了备用数据库,该特性也被证明更改有利,因在写丢失发生在持久存储后,任何查询和修改语句要求通过物理读获取这个数据块都会触发写丢失报错。这样可以使 DBA 通过介质恢复来恢复这个数据块(或数据文件/表空间)。

 

这个特性在12c的release 2为了测试的目的而引入的。12c release 2目前还不支持这个特性。 这个特性将会从18c开始可用

https://docs.oracle.com/en/database/oracle/oracle-database/19/admin/managing-tablespaces.html#GUID-23154DE0-B2AA-4D73-BBCA-73ED5786FF2B

 

详细信息

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


文档内容
用途
详细信息

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.