DATAGUARD的日志应用服务-Oracle认证考试-考试大

来源:百度文库 编辑:神马文学网 时间:2024/04/27 04:30:53
一、日志应用服务介绍

  日志应用服务自动应用重做到备数据库,以维护与主数据库的同步并允许对数据库的事务一致性访问。

  默认地,日志应用服务在应用归档重做日志文件到备数据库之前等待完全的归档重做日志文件到达备数据库。从主数据库传送的重做数据被备系统上的远程文件服务进程(RFS)接收,在那里RFS 进程写重做数据到归档重做日志文件或备重做日志文件。然而,如果你使用备重做日志文件,你能允许实时应用,这允许Data Guard从正在被RFS 进程写的当前备重做日志文件恢复重做数据。

  日志应用服务使用下面的方法来维护物理和逻辑备数据库:

  重做应用(只有物理备数据库)

  使用介质恢复来保持主和物理备数据库同步。

  注意:

  你也能以只读模式打开物理备数据库,允许用户查询备数据库用作报表用途。当打开的时候,还是接收重做数据的;然而,重做应用停止并且物理备数据库没有与主数据库保持同步。如果在此时间发生故障,会延长故障转移操作完成所需的时间

  SQL应用(只有逻辑备数据库)

  从主数据库接收的重做重组SQL语句并在逻辑备数据库上执行SQL语句。

  逻辑备数据库能以读/写模式打开,但是由逻辑备数据库维护的目标表只能以只读模式打开以用于报表用途(倘若数据库guard 适当设置)。SQL 应用允许你使用逻辑备数据库用于报表活动,即使当SQL 语句被应用时。

  二、日志应用服务配置选项

  使用实时应用来立即应用重做数据

  如果允许了实时应用特性,日志应用服务能在接收重做数据时应用,而不用等待当前备重做日志文件归档。这导致更快的切换和故障转移时间,因为备重做日志文件在故障转移或切换开始的时候已经应用到备数据库。

  使用 ALTER DATABASE 语句来允许实时应用特性,如下:

  对于物理备数据库,执行 ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE 语句。

  对于逻辑备数据库,执行ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE 语句。

  注意:使用实时应用需要备重做日志文件。

  显示了使用本地目的地和备目的地的Data Guard 配置。当远程文件服务(RFS)进程在备数据上写重做数据到备重做日志文件时,日志应用服务能从正在被写的备重做日志文件恢复重做。

  对归档重做日志文件的应用指定时间延迟

  在一些情况下,你可能想在重做数据从主站点接收到它应用到备数据库的时间之间创建一个时间延迟。你能指定时间间隔(分钟)来保护损坏或错误的数据的应用到备数据库,当你设置DELAY 间隔,它不是延迟重做数据的传输到备数据库。替代地,你指定的时间延迟从重做数据完整地归档到备目的地开始。

  注:如果你定义对一个允许实时应用的目的地的延迟,则该延迟被忽略。

  指定时间延迟

  你能使用 LOG_ARCHIVE_DEST_n 初始化参数的DELAY=minutes 属性,在主和备数据库上设置时间延迟来延迟应用归档重做日志文件到备数据库。默认地,没有时间延迟。如果你指定DELAY 而没有指定一个值,则默认的延迟间隔是30 分钟。

  取消时间延迟

  你能取消指定的延迟间隔,如下:

  对于物理备数据库,使用 RECOVER MANAGED STANDBY DATABASE 字句的NODELAY 关键词:

  SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE NODELAY;

  对于逻辑备数据库,指定下面的 SQL 语句:

  SQL> ALTER DATABASE START LOGICAL STANDBY APPLY NODELAY;

  这些命令导致日志应用在时间间隔过期之前,立即开始应用归档重做日志文件到备数据库。

  使用Flashback 数据库作为设置时间延迟的另一选择

  作为设置应用延迟的另一选择,你能使用Flashback 数据库来从损坏或错误数据的应用中恢复到备数据库。Flashback 数据库能快速、简单地闪回备数据库到一个任意的时间点。