OGG切换步骤
步骤描述
提前准备好切换方案;以及其他相关人员的配合
切换至容灾数据库:
(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切换步骤的更多相关文章
- 关于Cocos2d-x项目运行的过程和场景切换步骤
1.AppDelegate.cpp文件里面的applicationDidFinishLaunching函数其实可以看做C语言里面的main函数,是整个游戏运行的入口 这个函数里面的语句 auto sc ...
- (转)mysql主从切换步骤
原文:http://6226001001.blog.51cto.com/9243584/1723273 1> 正常切换 1)从服务器检查SHOW PROCESSLIST语句的输出,直到你看到Ha ...
- 使用 Postman 的 Environments 和 Tests 简化在不同环境中的切换步骤
调试 API 的时候,我们需要经常需要在本地.开发.生产来回切换,还需要面临 Token 失效等的问题,让人头大,看到一些教程有介绍用 Postman 来简化流程,但是实践起来还是遇到一些问题,所以就 ...
- mysql主从切换步骤
1> 正常切换 1)从server检查SHOW PROCESSLIST语句的输出,直到你看到Has read all relaylogwaiting for the slave I/O th ...
- 物理Data Guard主备切换步骤
物理Data Guard角色转换步骤 Step 1 验证主库是否能执行角色转换到备库(原主库执行) SQL> SELECT SWITCHOVER_STATUS FROM V$DATAB ...
- GoldenGate 反向切换步骤
1 事先配置好反向复制链路: 2 停止源端的应用程序; 3 确认源端Capture已捕获所有的Redo信息: GGSCI>info all GGSCI>info ext_app 4 确认源 ...
- UNDO表空间切换步骤
1.新建UNDO表空间 create undo tablespace UNDOTBS2 datafile '/data01/testdb/undotbs01.dbf' size 1G; alter d ...
- Android注解使用之注解编译android-apt如何切换到annotationProcessor
前言: 自从EventBus 3.x发布之后其通过注解预编译的方式解决了之前通过反射机制所引起的性能效率问题,其中注解预编译所采用的的就是android-apt的方式,不过最近Apt工具的作者宣布了不 ...
- 多步骤多分步的组件StepJump
最近的工作在做一个多步骤多分步的表单页面,这个多步骤多分步的意思是说这个页面的业务是分多个步骤完成的,每个步骤可能又分多个小步骤来处理,大步骤之间,以及小步骤之间都是一种顺序发生的业务关系.起初以为这 ...
随机推荐
- JAVA设计模式之【迭代器模式】
迭代器模式 聚合类,聚合对象 电视机遥控器,迭代器,遍历局和对象中的成员 灵活新增遍历方法 将负责遍历数据的方法提取出来,封装到专门的类中,实现数据存储和数据遍历分离.这就是迭代器模式. 灵活性,可扩 ...
- Nginx访问VM虚拟机CentOS 7系统与本地Windows系统共享目录403
用VMware安装了CentOS7系统,并搭建了Nginx,MySQL,PHP的web项目运行环境,为了方便Windows本地主机进行程序调试把Windows本地项目目录共享到了虚拟机CentOS中的 ...
- _itoa进制转换
#define _CRT_SECURE_NO_WARNINGS #include <stdlib.h> #include <stdio.h> void main() { int ...
- MYSQL主从复制搭建及切换操作(GTID与传统)
结构如下: MYSQL主从复制方式有默认的复制方式异步复制,5.5版本之后半同步复制,5.6版本之后新增GTID复制,包括5.7版本的多源复制. MYSQL版本:5.7.20 操作系统版本:linux ...
- ksh简介
-- Start 什么是 Shell 如果把 Linux 比作一个蛋,那么 Shell 就是蛋壳,我们需要通过 Shell 来使用系统. Shell 的种类 最早的 Shell 是 Bourne Sh ...
- 中级前端工程师要掌握的JavaScript 技巧
1.判断对象的数据类型 2.Es5实现数组map方法 3.使用reduce实现数组map方法 4.ES5 实现数组filter方法 5.使用reduce实现filter方法 6.ES5 实现数组som ...
- crontab执行脚本和手动执行脚本输出结果不一致的问题处理
背景:huskiesir最近用公司给分配的账户写了脚本去检测某应用状态并发送到企业邮箱,写完脚本之后去执行了一下,发现效果还不错,在邮箱显示效果如下: 10.11.116.6 检查结果OK,检查时间 ...
- P1017 进制转换 (负进制转换)
和平常的转化差不多 加多一步 如果余数 < 0, 那么余数减去除数(此时除数是负),商数加1 #include<cstdio> #define _for(i, a, b) for(i ...
- gRPC全局异常捕获
gRPC全局异常捕获 引 一般的.net项目比如ASP.NET.控制台程序.Windows服务.桌面程序等都会有framework自带的全局异常捕获机制.ASP.NET的ExceptionFilter ...
- XML快速注释
eclipse中编辑java或C/C++,python文件时,注释的快捷键均为 "CTRL + / ",编辑xml文件时,该快捷键无效. eclipse XML 注释:CTRL + ...