1.如果当前备库是处于最大保护(maximum protection)模式,要进行故障转移,必须先修改为最大性能(maximum performance)模式。修改方法:

1.1 查看当前备库的保护模式:

SQL > select name,db_unique_name,protection_mode from v$database;  

1.2 修改为最大性能保护模式:

SQL> alter database set standby database to maximize performance;

在Oracle 11g里,Data Guard 切换多了一个新的功能:flush redo。

Flush 能把没有发送的redo 从主库传送到standby库。 只要主库能启动到mount 状态,那么Flush 就可以把没有发送的归档和current online redo 发送到备库。

Flush语法:

SQL> ALTER SYSTEM FLUSH REDO TO target_db_name;

这里的target_db_name 是我们在主库的db_unique_name 名称。 也就是在tnsnames.ora 文件配置的。 Flush 会将未发送的redo 从主库传到备库,并且等待redo 在standby 库上apply 之后返回成功。 所以只要Flush成功,那么Failover 就没有主句丢失。

如果说我们的Primary 已经不能启动到mount 状态,那么就只能按照之前的方法来。 Oracle 10g 下就是这么操作的。

2.查看是否有归档日志的GAP:

SQL> SELECT UNIQUE THREAD#, MAX(SEQUENCE#) OVER(PARTITION BY THREAD#) LAST FROM V$ARCHIVED_LOG;

   SQL> SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;

3.加载copy归档归档日志信息至控制文件

SQL> ALTER DATABASE REGISTER  physical  logfile  '路径';

SQL>alter database register physical logfile ‘e:\log\1_1324_70523277.DBF’;

4.对比主备库归档日志列表的完整性,查看是否应用完毕

SYS@LEO> select sequence#,ARCHIVED,APPLIED from v$archived_log;   主库归档日志列表

SEQUENCE# ARC APP

---------- --- ---

10 YES YES

11 YES NO

11 YES YES

12 YES NO

12 YES YES

SYS@OEL> select sequence#,ARCHIVED,APPLIED from v$archived_log;   备库归档日志列表

10 YES YES

11 YES YES

12 YES YES

5.再应用redo前,要确保上面的备份日志已经全部运用完毕。redo日志应用问题

5.1 如果用户在主库commit 之后,然后shutdown abort, 这时候,主库的online redo 会自动的写入备库的最后一个归档文件里(大小会发生变化)。 我们在恢复的时候需要对备库的最后一个归档文件进行重新的注册。

sql>alter database register physical logfile 'filespec1';

5.2 如果说,主库OS是整个宕机了。 这个时候,online redo 是不会发送到备库。所以我们需要手工的将主库的所有online redo copy到备库。 然后进行recover。

步骤如下:

SQL> alter database recover managed standby database cancel;

Database altered.

SQL> recover standby database until cancel;

ORA-00279: change 509016 generated at 11/05/2010 11:40:27 needed for thread 1

ORA-00289: suggestion : /u01/archive/1_17_734225750.dbf

ORA-00280: change 509016 for thread 1 is in sequence #17

-- 默认情况下会提示需要归档17, 实际上这个序列为17的归档还没有生成,我们忽略它,使用我们刚才copy过来的redo 日志来恢复。

Specify log: {<RET>=suggested | filename | AUTO | CANCEL}

/u01/app/oracle/oradata/orcl/redo01.log   -- 注意, 这个位置是我手动写的

Log applied.

Media recovery complete.

这里一次就搞定了。 实际上有三个redo,如果不确定使用哪个redo的,只能一个一个试。

当我们使用了recover standby database until cancel之后,只能使用强制激活备库,如果使用正常模式,会提示我们需要:

ORA-16139: media recovery required

5.3 最后强制激活备库:

sql> alter database recover managed standby database cancel;

sql> recover standby database until cancel;

sql>alter database activate standby database;

sql>shutdown immediate;

sql>startup

6. Switchover

6.1 主库操作:

(1)查看状态:

sql>select switchover_status from v$database;

(2)切换

sql> alter database commit to switchover to physical standby with session shutdown;

SQL> shutdown immediate;

SQL> startup;

SQL> alter database mount standby database;

SQL> recover managed standby database disconnect;

6.2 备库操作:

SQL> alter database commit to switchover to primary with session shutdown;

SQL> shutdown immediate

SQL> startup

转载于:https://blog.51cto.com/929044991/1231462

Dataguard failover切换应用redo操作相关推荐

  1. 【DATAGUARD】物理dg的failover切换(六)

    [DATAGUARD]物理dg的failover切换(六) 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你 ...

  2. 物理dataguard 正常切换 脚色转换,switchover_status 状态改变

    正常切换 切换前: 主库: SQL> select DATABASE_ROLE from v$database; DATABASE_ROLE ---------------- PRIMARY S ...

  3. switch_status not allowed等物理dataguard 正常切换 脚色转换

    物理dataguard 正常切换 脚色转换,switchover_status 状态改变: 正常切换 切换前: 主库: SQL> select DATABASE_ROLE from v$data ...

  4. 【Data guard】Failover切换

    FAILOVER 切换   1.  查询备库角色及状态( AB 机) SQL> col db_unique_name for a15 SQL> select db_unique_name, ...

  5. 物理dataguard 正常切换 脚色转换

    物理dataguard 正常切换 脚色转换,switchover_status 状态改变: [@more@] 正常切换 切换前: 主库: SQL> select DATABASE_ROLE fr ...

  6. Oracle dataguard 正常切换和应急切换

    Oracle dataguard 正常切换和应急切换 oracle dataguard提供异地容灾方案,能有效的防止单点故障和提供高可用技术,这里介绍dataguard正常主备切换和应急切换(应急切换 ...

  7. 处理器在实施任务切换时的操作——《x86汇编语言:从实模式到保护模式》读书笔记39

    处理器在实施任务切换时的操作--<x86汇编语言:从实模式到保护模式>读书笔记39 处理器可以通过以下四种方法实施任务切换: 1. call指令或者jmp指令的操作数是GDT内的某个TSS ...

  8. CAD怎么切换角度标注对象?CAD切换角标操作技巧

    CAD标注尺寸是CAD制图过程中较为常用的功能之一,浩辰CAD给排水软件除了一些常用的CAD标注尺寸功能外,还为大家提供了便捷的切换角标功能.下面就让小编来给大家介绍一下浩辰CAD给排水软件中CAD切 ...

  9. Android 使用CameraX实现预览/拍照/录制视频/图片分析/对焦/缩放/切换摄像头等操作

    1. CameraX架构 看官方文档 CameraX架构 有如下这一段话 使用CameraX,借助名为"用例"的抽象概念与设备的相机进行交互. 预览 : 接受用于显示预览的Surf ...

最新文章

  1. python下载教程pdf-Python教程PDF合集下载
  2. UNIX Domain Socket(UDS)是什么?同一台主机间进程间通信
  3. 2016/06/22 中色启动筹码分析作业
  4. 钱线观察:货币基金T+0驾到 活期存款将死?
  5. “不翻身,就要翻船”!帆软独家:制造业数字化转型解决方案
  6. vue+axios方法封装(restful,ajax)
  7. 繁体中文转换为简体中文的PHP类
  8. CodeForces 598A Tricky Sum
  9. WIFI断网: 802.11协议Deauthentication Reason Codes
  10. python基础训练100题(带答案)
  11. 21天学通java web 第二版pdf_21天学通JAVA WEB开发 pdf完全版_IT教程网
  12. 视频教程-Oracle 11G 入门到项目实战-Oracle
  13. java大数据在线考试系统在线阅卷系统及大数据统计分析计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
  14. 计算机pe启动蓝屏怎么办,进pe蓝屏解决方法
  15. 数列极限:重要极限 π 与 e
  16. Flarum轻量级论坛的安装
  17. 骨传导原理是什么,骨传导耳机对耳朵有伤害吗?
  18. Oracle的直方图
  19. 中职组网络安全教你如何正确的颁发证书
  20. ice java例子,ICE java 范例

热门文章

  1. python运维面试题_PYTHON运维开发面试题整理
  2. [OpenStack] OpenStack Essex - Glance 安装部署与命令行详解
  3. 科略教育——执行力的3W管理法
  4. 【Indiegogo众筹】$99高性价比RK3399超小型mini主机
  5. struts2学习:配置篇值请求处理元素
  6. jQuery11 data() : 数据缓存
  7. Java操作Kafka执行不成功
  8. ubuntu下安装nginx时依赖库zlib,pcre,openssl安装方法
  9. Maven实践:版本管理 SNAPSHOT
  10. 简单的视频采集demo