准备工作

修改rman_backup这个文件的所有者和所属组,修改为oracle用户的oinstall组的文件

#chown –R oracle:oinstall /rman_backup/

主库和备库都要执行

RAC主库准备工作:

1.RAC主库必须为归档模式:

查看是否为归档模式,强制日志是否开启

集群当前状态:

将集群数据库停止,为了开启归档,在其中一个节点上操作即可(归档必须要在mount的状态下才能开启)

两个节点查看oracle进程

$ps –ef | grep ora_ 发现没有oracle已经停止了

在到另一个节点查看发现oracle也停止了

2.RAC主库必须设置为Force Logging模式

开启强制日志

SQL>alter database force logging;

再次查看

登录sqlplus,将其中一个节点的数据库启动到mount状态

查看当前状态,查看日志模式

将归档日志启动后,再次查看

显示为归档模式之后,关闭数据库

shutdown immediate

切换到grid用户下面,启动集群数据库

再切换到oracle用户,查看后台进程是否启动,连接到sqlplus中查看

3. RAC主库执行RMAN全库备份

默认的存储归档的位置是闪回恢复区,在创建oracle库的时候设定的

在RMAN中也可以查看到归档日志存放在哪里

切换日志的时候,就是出发lgwr进行写入归档,

SQL> alter system switch logfile;

开始执行备份

全库备份加上归档日志备份:

RMAN>

run{

allocatechannel c1 type disk;

allocatechannel c2 type disk;

allocatechannel c3 type disk;

allocatechannel c4 type disk;

backupdatabase format ‘/rman_backup/Full_%U.bak’;

backuparchivelog all format ‘/rman_backup/ARC_%U.bak’;

releasechannel c1;

releasechannel c2;

releasechannel c3;

releasechannel c4;

}

如果RMAN备份出现问题,需要重新备份的话,需要删除两个节点的备份

RMAN>delete backup;

RMAN>delete archivelog all;

如果不从rman中删除的话,从系统删除也可以,但是推荐从rman删除

这样就彻底删除干净了

4. RAC主库执行创建物理备库控制文件

备份控制文件为备库准备的控制文件:

5. RAC主库创建物理备库初始化参数文件

查看参数文件存放的位置:

用spfile生成参数文件,以便后面修改参数

6. RAC主库修改口令文件,使双节点sys用户口令一致



两个节点的sys都要修改密码,密码要相同

尝试一下sys的用户密码是否修改成功

节点2上的tnsname.ora

节点2上连接节点1的实例,成功

同样,节点1上的tnsname.ora

节点1连接节点2上的实例,成功

证明口令文件没有问题!

物理备库准备工作:

1.    FTP主库备份文件+备库控制文件+备库参数文件至物理备库服务器

备库上要创建RMAN备份路径相同的文件/rman_backup/

用scp将备份的全部文件传送到备库上

2.    物理备库创建口令文件

从主库上拷贝命令文件,并且重命名

3.物理备库初始化参数文件修改

物理备库操作:

将参数文件复制到/u01/app/oracle/product/11.2/db_1/dbs/

为了防止和controlfile和生成的控制文件冲突,所以,参数文件的控制文件部分修改如下:

在备库上创建需要的目录

mkdir –p /u01/app/oracle/diag/rdbms/phydb/adump

mkdir –p/u01/app/oracle/diag/rdbms/phydb/cdump

在+DATA上面创建目录:

需要登录到奥grid下面

输入asmcmd –p

在主库上面同样的方法进入到+DATA目录上

这样正好和参数文件中的相对应,主库上是/+DATA/devdb/,备库上是/+DATA/phydb/

最后查看下参数文件的所有者和所属组是不是oracle和oinstall

3.    配置RAC主库,物理备库的tnsname.ora

node2的tnsname.ora

rac上的两个节点和dg上的tnsname.ora都要一样

node1上的tnsname.ora

dg上的tnsname.ora

注意:DG上面链接DEVDB的时候会报错,原因是dg中scan-ip他无法解析,需要换成实际的IP来才可以,这里换成了172.16.0.203,再次链接到devdb就ok了

这里因为物理备库根本没有启动,肯定会报监听找不到的问题

创建物理备库:

1.    物理备库启动NOMOUNT状态

物理备库的操作:

查看下当前的状态和进程

但是oracle是没有启动的

确认一下环境变量:

将oralce物理备库启动到nomount

2.    RMAN恢复备库控制文件

查看备份中是否有备库需要的控制文件

用rman恢复控制文件

在物理备库的ASM磁盘组上找到了生成的控制文件:

3.    MOUNT 物理备库

将物理备库的oracle给他mount起来

4.    RMAN restore物理备库

在RMAN中执行:

5.备库上创建standby logfile

standby 的日志文件要比主库多一个日志组

standby的日志文件=(线程+1)x2

线程:如果是rac的话,你就有两个线程,那么standby的日志文件就应该是6个

而且线程要对应好

没有信息,根本就没有创建standby的日志文件

创建之前要先确定好日志组的大小,线程有多少

给线程1创建日志组5,6,7,大小为50M,

线程2创建日志组8,9,10,大小为50M

再次查看v$standby_log就有内容显示了

物理备库这会可以连接了

修改主库node1节点的参数,同步日志用

查看是否用spfile启动的数据库

如果两个节点都是用的spfile启动的话,修改完成后查看归档日志参数,就可以看到相应的修改

切换日志查看下是否同步

SQL.>alter system switch logfile;

查看是否应用归档日志

执行下面的语句进行手动应用归档日志

稍等片刻基本就都应用了

应用完归档日志后,取消应用

在打开备库

alter database open;

测试下DG的功能:

测试一下,在主库创建一个表空间,备库上查看表空间是否生成

角色转换

RAC上的DG搭建的更多相关文章

  1. 测试数据库DG搭建为正式库以后做准备

    Data guard 部署 1.系统准备(备库只需建立数据库软件) 两台操作系统 oracle linux 7 Node1 172.16.70.191 Node2 172.16.70.192 Orac ...

  2. linux下oracle11G DG搭建(二):环绕主库搭建操作

    linux下oracle11G DG搭建(二):环绕主库搭建操作 环境 名称 主库 备库 主机名 bjsrv shsrv 软件版本号 RedHat Enterprise5.5.Oracle 11g 1 ...

  3. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(四)-使用Travis自动部署Hexo(2)

    前言 前面一篇文章介绍了Travis自动部署Hexo的常规使用教程,也是个人比较推荐的方法. 前文最后也提到了在Windows系统中可能会有一些小问题,为了在Windows系统中也可以实现使用Trav ...

  4. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(三)-使用Travis自动部署Hexo(1)

    前言 前面两篇文章介绍了在github上使用hexo搭建博客的基本环境和hexo相关参数设置等. 基于目前,博客基本上是可以完美运行了. 但是,有一点是不太好,就是源码同步问题,如果在不同的电脑上写文 ...

  5. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(二)-Hexo参数设置

    前言 前文手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置介绍了github注册.git相关设置以及hexo基本操作. 本文主要介绍一下hexo的常用参数设置. ...

  6. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置

    前言 有朋友问了我关于博客系统搭建相关的问题,由于是做开发相关的工作,我给他推荐的是使用github的gh-pages服务搭建个人博客. 推荐理由: 免费:github提供gh-pages服务是免费的 ...

  7. ubuntu上用eclipse搭建java、python开发环境

    上一篇文章讲到如何在windwos上用eclipse搭建java.python开发环境,这一讲将关注如何在ubuntu上实现搭建,本人使用虚拟机安装的ubuntu系统,系统版本为:14.04 lts ...

  8. 【maven】 在 MyEcplise上使用maven搭建Web项目

    二.在My Ecplise上使用Maven搭建Web项目 1.新建一个maven项目   2.create一个简单的骨架 3.就像在ecplise中一样设置项目的以下配置   4.新创建的项目结构如下 ...

  9. 从零开始,在windows上用nodejs搭建一个静态文件服务器

    从零开始,在windows上用nodejs搭建一个静态文件服务器 首先安装nodejs: 新建一个node文件夹 下载node.exe到该文件夹 下载npm然后解压到该文件夹 现在node文件夹是这样 ...

随机推荐

  1. 双端口RAM和多模块存储器

    目录 双端口RAM 存取周期 双端口RAM 多模块存储器 普通存储器 单体多字存储器 多体并行的存储器 高位交叉编址的多体存储器 低位交叉编址的多提存储器 为什么要这么弄? 高位 低位 流水线(考试常 ...

  2. 带宽、延时、吞吐率、PPS 这些都是啥?

    Linux 网络协议栈是根据 TCP/IP 模型来实现的,TCP/IP 模型由应用层.传输层.网络层和网络接口层,共四层组成,每一层都有各自的职责. 应用程序要发送数据包时,通常是通过 socket ...

  3. 判断一个对象是否为空?怎么得到一个对象的第几个键名(key)?

    var obj = {"微信":[],"qq":[]} console.log( Object.keys(obj) ) // ["微信",& ...

  4. 22期老男孩Ptython全栈架构师视频教程

    老男孩Ptython全栈架构师视频教程 Python最新整理完整版22期视频教程 超60G课程容量<ignore_js_op> <ignore_js_op> <ignor ...

  5. Git简易教程-安装及简单使用

    Git是一种版本控制器,在项目开发中可以用来托管代码 一.下载安装Git 1. Git下载 地址:https://git-scm.com/download/win 2. 安装 检验是否安装成功 电脑桌 ...

  6. windows使用git bash 无法交互键盘上下键移动选择选项的解决方法

    目录 遇到的问题 解决方案 1. 直接通过数字键来选择 2. 使用 winpty 来启动命令 3. 将 git bash 换成 cmd 4. 使用vscode中是bash 遇到的问题 windows使 ...

  7. Java学习_面向对象编程

    抽象类 一个class定义了方法,但没有具体执行代码,这个方法就是抽象方法,抽象方法用abstract修饰.因为抽象类本身被设计成只能用于被继承,因此,抽象类可以强迫子类实现其定义的抽象方法,否则编译 ...

  8. 01. Consul 入门

    简介 Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,Consul的方案更"一站式",内置了服务注册 ...

  9. datagrid 根据指定参数重新加载数据

    $('#statisticalRecordList').datagrid('reload',{ start_date:$('#dd1').datebox('getValue'), end_date: ...

  10. Omega System Trading and Development Club内部分享策略Easylanguage源码

    更多精彩内容,欢迎关注公众号:数量技术宅.关于本期分享的任何问题,请加技术宅微信:sljsz01 关于 Omega System Trading and Development Club " ...