Oracle 12c 使用RMAN搭建物理备库(RAC to RAC)


一.实例环境说明

主库环境说明

操作系统:Oracle Linux 7.1

数据库版本:12.2.0.1

IP:10.10.10.190/10.10.10.191

主机名:cs1/cs2

数据库名:cs

Db_unique_name:cs

实例名(SID)cs1/cs2

免费云主机域名备库环境说明

操作系统:Oracle Linux 7.1

数据库版本:12.2.0.1

IP:10.10.10.171/172

主机名:jytest1/jytest2

数据库名:cs

Db_unique_nmae:cs_dg

实例名(SID)cs1/cs2

二.配置过程

2.1修改主库启用归档与force logging

首先检查主库是否启用归档

现在主库没有启用归档,执行下面的命令来对主库启用归档

这里主库已经启用了归档

启用force logging

2.2 给备库创建密码文件

这里通过复制主库的密码文件来创建备库密码文件

2.3.给备库创建参数文件

使用主库的参数文件进行创建

2.4为主库和备库配置监听

主库是rac已经配置了监听,备库也是RAC需要对其配置监听

备库:节点1

备库:节点2

2.5为主库和备库创建Oracle Net服务名

主库:节点1

主库:节点2

备库:节点1

备库:节点2

使用备份创建备库

对物理备库创建备重做日志文件,查询主库的联机重做日志文件,备重做日志文件的大小应该与主库联机重做日志文件的大小相同,备重做日志文件组的数量应该比主库联机重做日志文件组多一组,计算公式为(maximum # of logfiles +1) * maximum # of threads

SQL> select member from v$logfile;

MEMBER

——————————————————————————————————————————————————————————————————–

+DATA/CS/ONLINELOG/group_2.277.970601985

+DATA/CS/ONLINELOG/group_1.278.970601985

+DATA/CS/ONLINELOG/group_3.285.970602759

+DATA/CS/ONLINELOG/group_4.286.970602761

SQL> select group#,thread#,bytes/1024/1024 from v$log;

GROUP# THREAD# BYTES/1024/1024

———- ———- —————

1 1 200

2 1 200

3 2 200

4 2 200

SQL> select member from v$logfile;

MEMBER

——————————————————————————————————————————————————————————————————–

+FRA/CS_DG/ONLINELOG/group_2.346.976150835

+FRA/CS_DG/ONLINELOG/group_1.349.976150825

+FRA/CS_DG/ONLINELOG/group_3.344.976150843

+FRA/CS_DG/ONLINELOG/group_4.352.976150855

SQL> select group#,thread#,bytes/1024/1024 from v$log;

GROUP# THREAD# BYTES/1024/1024

———- ———- —————

1 1 200

2 1 200

3 2 200

4 2 200

SQL> alter database add standby logfile thread 1 group 5(‘+FRA/CS_DG/ONLINELOG/redo05.log’) size 200M;

Database altered.

SQL> alter database add standby logfile thread 1 group 6(‘+FRA/CS_DG/ONLINELOG/redo06.log’) size 200M;

Database altered.

SQL> alter database add standby logfile thread 1 group 7(‘+FRA/CS_DG/ONLINELOG/redo07.log’) size 200M;

Database altered.

SQL> alter database add standby logfile thread 2 group 8(‘+FRA/CS_DG/ONLINELOG/redo08.log’) size 200M;

Database altered.

SQL> alter database add standby logfile thread 2 group 9(‘+FRA/CS_DG/ONLINELOG/redo09.log’) size 200M;

Database altered.

SQL> alter database add standby logfile thread 2 group 10(‘+FRA/CS_DG/ONLINELOG/redo10.log’) size 200M;

Database altered.

设置主库相关初始化参数

主库以备库角色运行时需要额外设置的参数。这些参数当主库被转换为备库角色运行时生效:

给主库创建备重做日志文件,备重做日志文件组比联机重做日志文件多一组,主库是RAC数据库,在创建备重做日志文件时需要指定thread号:

Oracle用户使用srvctl在备库的另一节点注册备库和备库实例

添加实例

在备库的单个节点上执行实时重做应用

alert日志信息如下

在主库创建表空间test

从上面信息可以看到在备库创建的表空间test的数据文件名,下面从备库进行查询来验证

验证主库

备库

主库:节点1

备库:节点1

主库:节点2

备库: 节点2

主库:

备库:

验证物理备库是否执行正确

在创建物理备库后并且设置重做传输服务,可能想要验证主库的数据库修改是否会成功的传输到备库。对于备库可以查询v$managed_standby视图来验证重做是否被从主库传输到备库并应用。

上面的查询对于使用CLIENT_PROCESS为LGWR的主库会显示一行记录,它指示重做传输工作正常并且主重做线程将会被发送到备库。 如果主库是RAC数据库,那么对于使用CLIENT_PROCESS为LGWR的当前活动的每个主库实例都会显示一行记录。上面的查询对于MRP也行显示一行。如果MRP的状态显示为APPLYING_LOG并且SEQUENCE#等于主库当前正被发送的日志

序列号,那么备库已经解决了所有的日志差异并且当前处于实时应用日志模式。

查询主库当前正被发送日志的序列号为139与上面的MRP进程所显示的sequence#(139)相同

注意MRP进程可能显示的sequence#比主库当前被发送的日志序列号小,那么这就表示正在应用的归档重做日志文件与发送的日志文件之间存在差异并且它并没有赶上。一旦所有差异被解决,相同的查询将显示MRP正在应用当前sequence#。

相关推荐: 怎么理解Oracle事务

本篇内容主要讲解“怎么理解Oracle事务”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解Oracle事务”吧!oracle事务1概述事务由一个或多个DML语句组成,起始于第一条DML语句,终止于DDL或者D…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 01/23 19:24
下一篇 01/23 19:24