RAC上的DG搭建
准备工作
修改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搭建的更多相关文章
- 测试数据库DG搭建为正式库以后做准备
Data guard 部署 1.系统准备(备库只需建立数据库软件) 两台操作系统 oracle linux 7 Node1 172.16.70.191 Node2 172.16.70.192 Orac ...
- linux下oracle11G DG搭建(二):环绕主库搭建操作
linux下oracle11G DG搭建(二):环绕主库搭建操作 环境 名称 主库 备库 主机名 bjsrv shsrv 软件版本号 RedHat Enterprise5.5.Oracle 11g 1 ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(四)-使用Travis自动部署Hexo(2)
前言 前面一篇文章介绍了Travis自动部署Hexo的常规使用教程,也是个人比较推荐的方法. 前文最后也提到了在Windows系统中可能会有一些小问题,为了在Windows系统中也可以实现使用Trav ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(三)-使用Travis自动部署Hexo(1)
前言 前面两篇文章介绍了在github上使用hexo搭建博客的基本环境和hexo相关参数设置等. 基于目前,博客基本上是可以完美运行了. 但是,有一点是不太好,就是源码同步问题,如果在不同的电脑上写文 ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(二)-Hexo参数设置
前言 前文手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置介绍了github注册.git相关设置以及hexo基本操作. 本文主要介绍一下hexo的常用参数设置. ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置
前言 有朋友问了我关于博客系统搭建相关的问题,由于是做开发相关的工作,我给他推荐的是使用github的gh-pages服务搭建个人博客. 推荐理由: 免费:github提供gh-pages服务是免费的 ...
- ubuntu上用eclipse搭建java、python开发环境
上一篇文章讲到如何在windwos上用eclipse搭建java.python开发环境,这一讲将关注如何在ubuntu上实现搭建,本人使用虚拟机安装的ubuntu系统,系统版本为:14.04 lts ...
- 【maven】 在 MyEcplise上使用maven搭建Web项目
二.在My Ecplise上使用Maven搭建Web项目 1.新建一个maven项目 2.create一个简单的骨架 3.就像在ecplise中一样设置项目的以下配置 4.新创建的项目结构如下 ...
- 从零开始,在windows上用nodejs搭建一个静态文件服务器
从零开始,在windows上用nodejs搭建一个静态文件服务器 首先安装nodejs: 新建一个node文件夹 下载node.exe到该文件夹 下载npm然后解压到该文件夹 现在node文件夹是这样 ...
随机推荐
- STL——容器(Set & multiset)的概念和特点
1. Set 和 multiset 的概念 set 和 multiset 是一个集合容器,其中 set 所包含的元素是唯一的,集合中的元素按一定的顺序排列.set 采用红黑树变体的数据结构实现,红黑树 ...
- Day1 字符编码及编码函数
ord() 函数 获取字符的整数表示chr() 函数 把整数编码转换为对应字符'\十六进制编码\十六进制编码' 可以将字符的整数编码使用十六进制的方式这样写Python字符串类型为str,在内存中以u ...
- JVM虚拟机(三):Java内存区域
运行时数据区 Java虚拟机再执行Java程序过程中会把它所管理的内存划分为若干个不同分工的数据区域. 程序计数器 程序计数器时一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示 ...
- 数字crawlergo动态爬虫结合长亭XRAY被动扫描
群里师傅分享了个挖洞的视频,搜了一下,大概就是基于这篇文章录的 https://xz.aliyun.com/t/7047 (小声哔哔一下,不得不说,阿里云先知社区和360酒仙桥六号部队公众号这两个地方 ...
- css做keylogger
下载keylogger:https://github.com/maxchehab/css-keylogging 参考讲解:https://blog.csdn.net/weixin_34138139/a ...
- Docker来搭建分布式文件系统FastDfs
对于文件存储来说,一般情况下简单的处理就是在Django配置文件中配置存储目录,按照规则对文件进行上传或者下载. 实际上,当文件较少的时候,Django是可以应付的过来的.但当文件以海量形式出现的时候 ...
- openstack高可用集群16-ceph介绍和部署
Ceph Ceph是一个可靠.自动重均衡.自动恢复的分布式存储系统,根据场景划分可以将Ceph分为三大块,分别是对象存储.块设备和文件系统服务.块设备存储是Ceph的强项. Ceph的主要优点是分布式 ...
- 用Python实现童年小游戏贪吃蛇
贪吃蛇作为一款经典小游戏,早在 1976 年就面世了,我最早接触它还是在家长的诺基亚手机中.
- (一)、vim及gvim添加多行注释及删除多行注释块操作
一.添加多行注释 选中要注释的行(连续的多行): Ctrl + v进入块选择模式: 按住I(大写)进入行首插入模式: 插入注释符: 按Esc回到命令模式. 或者 1. 进入命令行模式,按ctrl ...
- 向Docker告别的时候到了
在容器的远古时期(大约4年前),Docker是容器游戏中仅有的参与者.但是现在情况不一样了,Docker不再是唯一的一个了,只是另一个容器引擎而已.Docker允许我们构建,运行,拉取,上传,查看容器 ...