介质恢复同步过程

1、LNS从重做日志缓冲区读取最近转储的重做数据,然后使用确定的重做传输目标将重做流发送到备用站点(log_archive_dest_n)。因为这是async传输,lgwr不会等待LNS在网络上发送的任何确认消息;实际上,除了在数据库启动阶段启动时以及在备用数据库连接发生故障后,LGWR不与LNS通信。

2、备用站点的RFS将网络套接字中的重做流读入网络缓冲区(我理解的网络缓冲区是操作系统内核的),然后将重做流写入SRL。

3、当主数据库上发生日志切换时,备用站点的ARCH进程将SRL文件归档到归档日志文件。生成的归档日志文件随后在备用控制文件中注册。

4、真实的恢复进程流包含3个不同阶段,如下

1)、日志读取阶段,托管恢复进程(MRP)以异步方式从SRL或归档重做日志预读重做数据。只有恢复落后或非实时应用模式下才会出现后一种情况。会分析需要应用重做数据的块,并将其放入相应的内存映射段中。

2)、应用重做阶段 MRP进程使用并行查询(parallel query, PQ)进程间通信框架将重做数据发送给恢复从属进程。并行介质恢复(parallel media recovery, PMR)(下边介绍)使需要的数据块读入缓冲区高速缓存,随后将重做数据应用于这些缓冲区高速缓存中。

3)、检查点阶段  该阶段将最近修改的缓冲区(由并行恢复从属进程修改的)转储到磁盘,还更新数据文件头,已记录检查点完毕。

不断重复第一步到第四步,直到恢复停止或发生角色转换(切换或者故障转移)

并行介质恢复:

MRP进程将扫描重做日志(异步读取),然后解析和构建重做更改段映射。这一部分由单个MRP进程轻松处理。一旦映射段构建完毕,就启动应用进程,在此执行并行操作。

Oracle Database 10g使用并行查询(parallel query, PQ)从属进程来执行并行应用。PQ从属进程使用消息从MRP提取重做段。Init.ora参数PARALLEL_EXECUTION_MESSAGE_SIZE(或PEMS)定义PQ从属进程与MRP之间交换的消息的大小。在Oracle Database 10g物理备用系统中,建议将这个参数设置为8KB或16KB,具体取决于可用内存的大小。在配备大量内存(专门用于共享池)的64位系统中,8KB或16KB PEMS设置足以满足要求。

10g托管恢复的主要问题在于PQ从属消息的开销。Oracle Database 11g通过利用Oracle内核从属(Oracle Kernel slave ,KSV)进程,降低了PQ从属的开销。可将KSV从属进程视为PR0x进程,MRP将实际恢复(并行恢复)转给KSV从属进程。PR0x进程将散列到一个段映射,从映射中读取信息,并将重做数据应用于备用数据库。通过利用KSV从属进程,可以消除设置PEMS参数的必要性,甚至不必再指定用于恢复的从属进程数量。启动的PR0x进程的数量取决于服务器上的CPU的数量。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值