龙空技术网

19C dataguard测试Multi-Instance Redo Apply (多实例redo应用)

葫芦儿的成长记录 72

前言:

当前各位老铁们对“oracle 19c alert日志位置”大体比较讲究,姐妹们都想要学习一些“oracle 19c alert日志位置”的相关内容。那么小编也在网络上搜集了一些对于“oracle 19c alert日志位置””的相关资讯,希望兄弟们能喜欢,我们快快来了解一下吧!

在Oracle Database 12.2.0.1 之前的版本上,对于物理standby 数据库,将Redo应用于Oracle RAC standby数据库上的单一实例是受限的。在12.2版本上, redo apply现在可以根据用户的不同配置在部分或者所有standby实例上运行。 如果需要,可以通过添加其他standby实例来实现Redo Apply性能扩展。

有了这个新功能,可以为任何主要工作负载实现恢复时间上的目标。 这对于大型Oracle RAC集群的客户和Oracle Exadata的客户都有重要的意义。 Oracle Active Data Guard用户还可以实时访问当前信息。 以这种方式扩展应用性能意味着standby数据库始终是最新的,即使在有很多个节点的Oracle RAC集群的逻辑卷上也能保证信息的实时性

使用方式说明

从12.2.0.1开始 在执行 alter database recover managed standby database的命令的时候可以添加 INSTANCES [ ALL | integer]参数

如果需要对内存列式存储(In-Memory Column Store)使用多实例应用那么需要设置enable_imc_with_mira 参数 为 TRUE.

alter database recover managed standby database INSTANCES [ ALL | integer]

ALL选项使重做应用程序在Oracle RAC备用数据库中启动恢复时处于打开或装载状态的所有实例上运行。所有实例都必须处于相同的状态-打开或装入。不允许混合状态.integer选项将重做应用使用的实例数限制为指定的数目。对于integer,请指定一个从1到备用数据库中实例数的整数值。数据库选择要执行“重做应用”的实例;不能指定特定实例。

V$RECOVERY_PROGRESS视图仅在开始恢复的实例(MRP0进程所在的实例)上填充。

如果省略INSTANCES子句,则仅在发出命令的一个实例上进行恢复。

测试1:默认参数不指定instance 测试环境为19c rac-rac的dataguard环境

备库实例1执行如下

SQL> alter database recover managed standby database disconnect from session;

Database altered.

查看实例1的alert日志

实例1启动MRP进程

实例2未启动mrp进程

实例1有pr进程启动进行日志应用,pr进程相当于干活的,mrp相当于协调的

实例2没有mrp相关进程及pr进程

测试3:指定instance为1 则对于我的测试环境两个rac备库会选择一个进行日志应用

备库实例1执行如下

SQL> alter database recover managed standby database cancel;

Database altered.

SQL>alter database recover managed standby database disconnect from session instances 1;

实例1日志

实例1启动mrp进程

实例1启动mrp进程及对应的pr子进程

实例2没有启动任何进程

实例2的日志

测试2:指定instance为2 则对于我的测试环境两个rac备库同时进行日志应用和all的作用是一致的。

备库实例1执行如下

SQL> alter database recover managed standby database cancel;

Database altered.

SQL>alter database recover managed standby database disconnect from session instances 2;

查看实例1的mrp进程

实例1启动了mrp进程和多个pr进程

实例1 alert日志

实例2只有pr进程没有mrp进程

实例2没有mrp进程

实例2 alert日志

测试4:指定instance为all 则对于我的测试环境两个rac备库会全部进行日志应用

备库实例1执行如下

SQL> alter database recover managed standby database cancel;

Database altered.

SQL>alter database recover managed standby database disconnect from session instances all;

实例1日志

实例1 启动pr及mrp进程

实例1 启动mrp进程

实例2 启动pr进程没有mrp进程

实例2 没有mrp进程

从上述看来启动多实例应用日志Multi-Instance Redo Apply 并不会在两个实例同时启用mrp进程,而是会在每个实例上面启动多个apply slaves进程,MRP0对其它所有实例上的pr*进程来说是一个协调进程,在整个MIRA恢复中只有一个mrp0进程的情况是正常的。(mos 2577535.1)

标签: #oracle 19c alert日志位置 #oracle19c dataguard