Oracle ADG(Active Data Guard)搭建、测试、角色转换
一、数据的基本介绍
1.数据库:实例+存储
instance=memory+bg process
storage = 八大类型文件(参数文件,控制文件,数据文件,联机重做日志文件,归档重做日志,警告,密码,备份)前四个是最重要的
server:instance+database(storage)
数据库的状态:shutdown–>
started/nomount–>读参数文件+启动了后台进程 为什么能读到参数文件? 因为参数文件是在指定的位置+指定的名称($ORACLE_HOME/dbs/initSID.ora)
mount–>读控制文件 为什么能读到控制文件? 控制文件的位置是由control_files这个参数来决定的,control_files:控制文件要全部找到,并且要完全一致
open 找其他文件(控制文件记载了datafile,online redo log的位置,记载了备份信息)
startup命令执行的时候并没有指定参数文件的路径,但是为什么能找到参数文件?
因为参数文件是在指定位置+指定名称
指定位置:ORACLE_HOME/dbs
Dataguard(DG):致力于在秒级别解决的是数据库的宕机的问题,以前的数据库备库是不打开的,叫DG,11g以后,备库是打开的就是活动的状态,可以读数据,叫ADG(Acitive Data Guard)
和dataguard类似的一个工具叫Golden gate,被Oracle收购后叫Oracle goldengate,略称OGG,也可实现两个库之间的传输,和dataguard的两个区别,Golden gate不局限于Oracle与Oracle之间的传输,可以基于表或用户来传输,OGG维护较麻烦(容易出问题),搭建较简单。
dataguard是基于库级别
第一步,要在某一个时刻,主备库初始要是一样的,
第二步,从主库传redo给备库,若是主库归档模式不开,若网络中断,会导致redo丢失,所以主库一定要是归档模式
备库种类:
1.物理备库:主备库之间的级别是块对块的,块级别对应
2.逻辑备库:不常用,日志传过来要解析SQL,主备库在存储层面没有对应关系
3.快照备库:在备库上用命令或其他方式进入到快照模式,此时,备库就会不再实施主库传过来的状态,但继续主库文件传输,备库也会变成读写状态,就可以进行测试了,测试完成后再用命令或其他方式再回到之前的快照,所有操作将消失,备库会继续实施主库传来的文件。
角色转换有:
1.Switchover 主动切换主备库角色
2.Failover 主库坏了,把备库拉成主库
dataguard提供了三大类型的服务:
1.传redo
2.实施服务(Redo apply,SQL apply)
3.角色管理服务
Oracle Data Guard Broker Framework
Broker:经纪人的意思,是data guard的一个工具
实验环境:
192.168.112.200有一个 PROD5的数据库
192.168.112.201 没有数据库但安装了数据库软件,在201里把备库的数据库搭建出来
第一步 :确保主备库网络要互通,ping IP地址是通的
ping 192.168.112.201
ping 192.168.112.200
第二步:主机名要互通,做了一个主机名和IP地址的对应 /etc/hosts
ping ocm1
ping o