前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于switchover的流程和补充(r9笔记第4天)

关于switchover的流程和补充(r9笔记第4天)

作者头像
jeanron100
发布2018-03-19 16:12:18
8040
发布2018-03-19 16:12:18
举报
文章被收录于专栏:杨建荣的学习笔记

对于Oracle Data Guard中的Switchover一般是计划内的操作,自己其实也处理了不少的故障,也算是轻门熟路。复杂的事情简单做,简单的事情重复做,重复的事情用心做,想必很多事情都是这个理吧。 发现很多事情虽然做了很多遍,但是每次都会有不同的体会,而这些积累下来的经验才让我们的经验更加宝贵。 一般来说Oracle的Switchover需要考虑的细节较多,大体有以下的流程。 1.在迁移之前明确目标服务器IP,发出维护公告 这个无需多说,本身就是跨部门,多部门的协调工作,说简单简单,说复杂复杂,技术层面的事情就是需要提供给各业务部门相关联的服务器信息,让他们提前准备。 2.设置zabbix的维护窗口 为了避免很多批量紧急的报警,我们需要一个明确的维护窗口,把主备库环境都纳入维护窗口,这样会避免很多不必要的报警短信和报警解释。 3.DG Broker的验证 在切换前,需要保证DG Broker一定是正常的状态,我们可以有一下几种验证方式。 把备库置于read-only状态,如果是11gADG,需要查看select open_mode from v$database一定需要时READ ONLY WITH APPLY,如果是10g版本,这个步骤尤其重要,如果切换之后,因为各种奇葩的原因,备库无法正常使用就歇菜了,备库的临时表空间,日志等问题需要提前 检查好,因为这些对于备库来说都不会直接影响主从一致性,但是备库变主库就尤其重要。 查看主备库的延迟情况,这个在11g中可以通过show database verbose xxx的方式看出备库的延迟情况,而对于10g来说,这些属性还没有,我们可以查看主备库的SCN情况,甚至在主库做一个日志切换,在备库查看应用的情况。 4.停止数据库,释放连接 为了尽可能在维护的可控范围内,保证很多活跃会话的事务一致性,最好还是能够在switchover前重启一下数据库,释放数据库连接,当然很多应用有重 连机制,我们可以停掉其它的监听端口,设定一个独立的端口留给Data Guard,当然这也是一把双刃剑,如果端口刚好被很多应用所用,你是没法完全控制的,可能处理不当,DG Broker都不能正常使用了,因小失大。 5.Switchover 切换是这个过程的核心,我们可以使用DG Broker来完成,这个过程本身就没有太多的技术亮点,但是最大的坎就是心灵压力了,我碰到过在Solaris下Failover网络连接超时的切换, 切换时间极长,后台没有任何日志输出,这个过程只有经历了才会更懂,有些切换的时候可能检查没有做彻底,或多或少会碰到一些问题,这个时候我的建议是准备 好两套方案,如果一旦DG Broker切换中出现任何问题,我们可以完全手工来接管。毕竟切换的过程就是转换数据库角色,一定要沉着冷静,当然沉着冷静这个是在不断的经历中锻炼出 来的。 6.同步listener.ora,tnsnames.ora,/etc/hosts 主备库切换需要同步监听,tns,主机的信息,这些信息比较琐碎,可以提前准备好一个临时文件,到时候直接替换即可,特别注意需要保证主备库的监听端口是一致的。 7.防火墙同步 防火墙信息需要提前准备,需要提前告知相应的部门。我们在切换前就可以提前安排,把防火墙信息同步过来,需要注意网卡的名称是否一致,是否主备库有特殊的设定策略。 8.修改客户端的连接IP 有些服务器会通过服务端TNS来连接要切换的数据库,我们可以从防火墙中得到一个概要信息,哪些DB服务器中的tnsnames.ora里面包含了目标数据库,修改tnsnames.ora中的IP即可。 9.修改Database Link中的IP对应防火墙权限 比如目标数据库含有50个Database Link,可能会访问多个数据源,那么这个过程是运行时触发,在切换中是不会发现的,我们需要提前从db link对应的tns中进行过滤,查看那些服务器是否已经开启了防火墙权限,指定的端口已经开启。 10.crontab 修改 同步主备库的crontab的信息,保证主备库的这些JOB能够正常运行,有些JOB如果执行频度极高,需要考虑暂时在切换的过程中先禁用,保证在切换Release环境之后正常开启。 11.修改orabbix配置 主备库的IP发生改变,我们就需要重新配置Orabbix中的连接信息。 12.查看是否还有连接在备库存在 这个是一个持续性的过程,需要留意是否有计划外的会话依然在备库,可以使用netstat -nalp来得到一个基本的网络访问情况 13.留意观察Scheduler JOB运行正常 查看是否数据库内的Scheduler能够正常运行。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-05-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 杨建荣的学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档