步骤描述

提前准备好切换方案;以及其他相关人员的配合

切换至容灾数据库:

(1)停止前端业务,确认目标端数据已经追平

(2)数据校验,确认数据一致

(3)停止生产库OGG进程(停止后可以直接删除)

(4)停止容灾库OGG进程(停止后可以直接删除)

(5)重置容灾库的sequence值(如果不做序列复制,则一定需要;如果序列复制,检查一下,确认容灾上值大于等于源库)

(6)容灾库配置OGG捕获进程和传输进程;源端配置OGG投递进程

(7)Enable容灾库之前被disable的触发器和约束

(8)Disable生产库的触发器和约束

(9)确认容灾库的附加日志是否已经加上

(10)确认容灾库的附加日志是否已经加上

(11)启动新的复制链路进程

回切步骤:

(1)停止前端业务,确认端数据已经追平

(2)数据校验,确认数据一致

(3)停止容灾库上OGG进程(停止后可以直接删除)

(4)停止生产库OGG进程(停止后可以直接删除)

(5)重置生产库的sequence值

(6)生产库配置OGG捕获进程和传输进程;容灾库配置OGG投递进程

(7)Disable容灾上的触发器和约束

(8)enable源端的触发器和约束

(9)启动新的OGG复制链路进程

几个注意点

(1)如果不删除原来的进程,需要先begin now,然后再启动

(2) 数据校验的方法和运行时间

(3)之前需要明确哪些trigger和约束被disable;还是用延迟参数吧!

(4)序列的重置,主要是回切阶段,使生产端的序列值大于等于容灾端,以免发生序列值重用的问题

序列重置的思路

思路:查询出当前源端和目标端的序列的last_number的差值->设置要调整的一侧的序列的

increment为该差值->要调整一侧的序列做一次nextval即可

n 建议:修改目标端的序列的为nocache,这样可以取得准确的last number

select 'alter sequence '||t1.sequence_owner||'."'||t1.sequence_name||'" increment by

'||to_char(s1.last_number-t1.last_number)||';' from ogg.dr_seq_target t1, ogg.dr_seq_source s1

where t1.sequence_owner=s1.sequence_owner and t1.sequence_name=s1.sequence_name

and s1.last_number>t1.last_number;

select 'select '||sequence_owner||'."'||sequence_name||'".nextval from dual;' from dr.dr_seq_t1;

OGG切换步骤的更多相关文章

  1. 关于Cocos2d-x项目运行的过程和场景切换步骤

    1.AppDelegate.cpp文件里面的applicationDidFinishLaunching函数其实可以看做C语言里面的main函数,是整个游戏运行的入口 这个函数里面的语句 auto sc ...

  2. (转)mysql主从切换步骤

    原文:http://6226001001.blog.51cto.com/9243584/1723273 1> 正常切换 1)从服务器检查SHOW PROCESSLIST语句的输出,直到你看到Ha ...

  3. 使用 Postman 的 Environments 和 Tests 简化在不同环境中的切换步骤

    调试 API 的时候,我们需要经常需要在本地.开发.生产来回切换,还需要面临 Token 失效等的问题,让人头大,看到一些教程有介绍用 Postman 来简化流程,但是实践起来还是遇到一些问题,所以就 ...

  4. mysql主从切换步骤

    1>   正常切换 1)从server检查SHOW PROCESSLIST语句的输出,直到你看到Has read all relaylogwaiting for the slave I/O th ...

  5. 物理Data Guard主备切换步骤

    物理Data Guard角色转换步骤   Step  1   验证主库是否能执行角色转换到备库(原主库执行) SQL> SELECT SWITCHOVER_STATUS FROM V$DATAB ...

  6. GoldenGate 反向切换步骤

    1 事先配置好反向复制链路: 2 停止源端的应用程序; 3 确认源端Capture已捕获所有的Redo信息: GGSCI>info all GGSCI>info ext_app 4 确认源 ...

  7. UNDO表空间切换步骤

    1.新建UNDO表空间 create undo tablespace UNDOTBS2 datafile '/data01/testdb/undotbs01.dbf' size 1G; alter d ...

  8. Android注解使用之注解编译android-apt如何切换到annotationProcessor

    前言: 自从EventBus 3.x发布之后其通过注解预编译的方式解决了之前通过反射机制所引起的性能效率问题,其中注解预编译所采用的的就是android-apt的方式,不过最近Apt工具的作者宣布了不 ...

  9. 多步骤多分步的组件StepJump

    最近的工作在做一个多步骤多分步的表单页面,这个多步骤多分步的意思是说这个页面的业务是分多个步骤完成的,每个步骤可能又分多个小步骤来处理,大步骤之间,以及小步骤之间都是一种顺序发生的业务关系.起初以为这 ...

随机推荐

  1. Scala语言

    一.Scala概述 Scala简介 Scala是一种针对JVM将函数和面向对象技术组合在一起的编程语言.所以Scala必须要有JVM才能运行,和Python一样,Scala也是可以面向对象和面向函数的 ...

  2. Scalable, Distributed Systems Using Akka, Spring Boot, DDD, and Java--转

    原文地址:https://dzone.com/articles/scalable-distributed-systems-using-akka-spring-boot-ddd-and-java Whe ...

  3. Linux基础01

    ** 一些老生常谈的问题 一提起Linux,行业内无人不知<鸟哥私房菜>,就是放在胸口可以防弹的那种书,虽说经典.全面,但对于初学者而言,确实过于厚重,而且容易学着后边忘了前边,毕竟实际操 ...

  4. <Three.js>(第三节)全景漫游

    一.实验内容 通过上次实验,了解了Three.js创建场景的基本步骤.这一节,我们将通过Three.js实现全景漫游功能.如下图: 全景图是获取一个3D场景中的不同角度的图片,然后通过拼接.融合实现3 ...

  5. cuda windows运行时间限制

    GTX1080的卡,8G的显存,写cuda时申请了2G的显存就莫名其妙的抛异常,昨天找了一天也没找出bug,去stackoverflow上问了下才知道是windows的事,需要修改注册表.问题链接 - ...

  6. pthread_cleanup_push

    #define pthread_cleanup_push(func, val) \ { \ struct __darwin_pthread_handler_rec __handler; \ pthre ...

  7. yii2.0 发送邮件带word小附件

        把 common/config/main-local.php 下的 mailer 注释掉:           'mailer'=>[                    'class ...

  8. libcudnn (R5) not found in library path

    环境:Ubuntu 18.04 +  Torch7 + cuda10 在运行使用cudnn的lua程序的时候产生错误: /home/majiabiao/torch/: /home/majiabiao/ ...

  9. Git日常操作指令

    1. 将本地项目上传到码云: ①. 码云上创建一个项目 ②. 本地文件项目内右键git bash进入git控制台 ③. git init 命令   -- 会在本地创建一个.git文件夹 ④. git ...

  10. Eclipse配置class文件输出目录

    1, Eclipse选中项目名称,邮件选中“Build Path”,然后选择“Configure Build Path”--->选择“Source” Tab---->修改"Def ...