Data Guard 主备库角色转换

1. switchover操作

1.1 备库先关闭实时日志应用

standby>alter database recover managed standby database cancel;

1.2 主库先判断是否可以支持switchover操作

primary> select switchover_status from v$database;

该值为:TO STANDBY;表示支持。
该值为:SESSION ACTIVE;表示主库有激活会话。不妨碍switchover操作。

1.3 启动switchover;主库转换physical standby。

若上值为第二种情况;后面需加 with shutdown session
即 alter database commit to switchover to physical standby with shutdown session;

primary> alter database commit to switchover to physical standby;
Database altered.

1.4 重启原primary库

Primary> shutdown immediate;

ORA- 01507 : database not mounted
ORACLE instance shut down.
Primary> startup
ORACLE instance started.

Total System Global Area 1.5132E+10 bytes
Fixed Size            2243112 bytes
Variable Size         2013267416 bytes
Database Buffers     1.3086E+10 bytes
Redo Buffers           30552064 bytes
Database mounted.
Database opened.

1.5 物理standby切换为primary

standby>alter database commit to switchover to primary;
alter database commit to switchover to primary
*
ERROR at line 1:
ORA-16139: media recovery required
standby>alter database recover managed standby database disconnect from session;
Database altered.
standby>alter database commit to switchover to primary;
Database altered.

1.6 重启新primary

standby> alter database open;
Database altered.

1.7 新physical standby启动实时日志应用

Primary> alter database recover managed standby database using current logfile disconnect from session;

2.failover操作

模拟主库挂掉

Primary> shutdown abort;
ORACLE instance shut down.

2.1 检查归档文件是否连续

查询待转换standby 数据库的V$ARCHIVE_GAP 视图,确认归档文件是否连接

StandBy>  SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;
no rows selected

如果有,则拷贝过来;
手工的注册这些日志:
StandBy> ALTER DATABASE REGISTER LOGFILE ‘路径‘;

2.2 启动failover,备库切换主库操作。

StandBy> alter database recover managed standby database finish force;
Database altered.

StandBy> alter database commit to switchover to primary;
Database altered.

StandBy> alter database open;
Database altered.

2.3 将原primary库重建备库操作

参考博客:http://www.cnblogs.com/lottu/p/7054731.html;http://www.cnblogs.com/lottu/p/7058774.html

实施数据库克隆(辅助实例启动到nomount状态后)

应用redo日志操作;或者 启动实时应用redo日志操作。

参考文献:《三思笔记第10.2.4章节》

时间: 2024-11-06 18:44:34

Data Guard 主备库角色转换的相关文章

Oracle 11g Data Guard 之逻辑备库角色转换

逻辑备库不复制数据库服务,在进行switchover或者failover时,连接主库服务的中间层将不能连接(因为服务的创建没有被复制),或者连接不正确的版本(因为服务属性的修改没有被复制). Oracle集群不复制管理逻辑备库的服务,必须手动对主库与备库进行同步,具体的详参Oracle集群管理和部署的相关内容. 一.逻辑备库的switchover操作 当进行switchover操作来改变主库和逻辑备库的角色时,总是在主库启动switchover,然后在逻辑备库完成操作,其中的步骤必须按顺序,否则

Oracle 11g Data Guard 物理备库快速配置指南(上)

缘起 最近做了10g和11g的物理备库配置实验,发现 Data Guard 其实很容易,但是缺少好文档.我是参考官方文档做的实验,觉得它写的不是很清楚的. Google 出来两个pdf文档,读了觉得比官方文档强很多.翻译下,也许会对某些朋友有用.翻译的同时我也好更熟悉下这两个文档.好久没翻译过英文了,可以顺便练练手. 原文档下载地址(墙外): Configure Dataguard 11gR2 Physical Standby Part 1 Configure Dataguard 11gR2 P

Oracle 11g Data Guard 之物理备库角色转换

一.物理备库的Switchover操作 本节主要内容是物理备库的switchover操作,该操作起始于主库,结束于目标备库. 1.确认主库可以切换为standby角色 SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE; 如果结果显示TO STANDBY或者SESSIONS ACTIVE,则表明主库可以切换为standby角色,否则,切换操作将不可行,因为redo传输不是配置错误就是不能正常进行. 2.主库启动switchover 执行如下SQL语句将主库

oracle dataguard主备库参数文件配置详解

主库参数详解: 保持同一个Data Guard中所有的DB_NAME相同 DB_NAME=ora11g 为一个数据库指定一个唯一的名称,该参数一经指定就不会发生改动除非DBA主动改动 DB_UNIQUE_NAME=ora11g_primary 初始化参数LOG_ARCHIVE_CONFIG用于控制发送归档日志到远程位置.接收远程归档日志,并指定Data  Guard配置的惟一数据库名,默认值为SEND,RECEIVE,NODG_CONFIG. 当设置该参数为SEND时,会激活发送归档日志到远程位

备份一篇SVN的文章, 从搭建到主备库

来源: http://h2ofly.blog.51cto.com/6834926/1539141 [svn简介]            svn用于版本管理数据,它采用了分支管理系统.在它出现之前存在CVS,svn推出之后,逐步替代了CVS.            目前又出现git,相比于svn,git更支持分布式版本管理,目前发展很猛,这里不详细介绍.大家可以先把svn了解熟悉之后,再看看git,对比下.            ps:时代总是在进步啊,需要跟上潮流.同时,需要了解潮流为何,需要思

MySQL主备库切换演练与总结

演练包括被动切换和主动切换两部分.被动切换是主库宕机,主动切换是人工手动触发. 演练步骤大致如下: 1 先停掉主库,模拟主库宕机 2 mha将vip切到备库,备库变成主库,应用可以正常读写数据库 3 重新启动宕机的原主库 4 在原主库上建立同步关系(根据宕机时,日志记录的binlog的文件名和偏移量,恢复从这里开始) 5 mha手动切换主库,还原到最初状态,应用可以正常读写数据库 6 演练结束 演练过程问题总结: 1 mha每次自动切换之后都会结束自身进程,并在日志目录如/app/mha/xxx

oracle DG 主备库为RAC及一个主库对多个从库的实验环境搭建

主库 RAC :192.168.1.210 node1 192.168.1.211 node2 备库(1) RAC:    192.168.1.247 rac1 192.168.1.248 rac2 备库(2) 单实例:192.168.1.219 dataguard 以上均为ASM管理. 实验步骤: 配置备库(1)的静态监听: SID_LIST_LISTENER=       (SID_LIST=       (SID_DESC=       (GLOBAL_DBNAME=SMS)      

ORA-01110 ORA-01111 ORA-01157主备库数据文件路径路径不一致,备库开启ADG应用报错(一切都是套路)

#######################Begin Now################################### #################################################################### ################################################################### #############################################

shell判断oracle主备数据库备份脚本

1. 脚本如下 说明:按照客户要求,在主备数据库上同时部署脚本,自动判断是否是主库,如果是主库则进行备份,备库不需要备份,记录日志为备份库即可,以下脚本仅供参考,可以进一步优化. 脚本说明: 1.DATABASE_ROLE查看主备库角色变量 2.Main()函数 数据库备份脚本 3.根据主备库关键字判断是否执行main()函数 #!/bin/bash # Author:roidba # filename:/backup/backup.sh #logfile:/backup/rman_fullba