专栏首页杨建荣的学习笔记Datapump数据迁移前的准备工作(二)(r9笔记第59天)

Datapump数据迁移前的准备工作(二)(r9笔记第59天)

之前写了一篇文章分析了Datapump迁移数据的一些准备总结,反响还不错。Datapump数据迁移前的准备工作,最近碰到一个场景,根据评估还是使用Datapump比较好。主要的原因如下: 1.原来的环境在Solaris下,硬件资源老旧,需要迁移到Linux下,跨平台迁移使用逻辑迁移优先 2.原来的环境使用10gR2,现在需要顺带迁移到11gR2,充分解决备库“不中用”的情况 3.迁移的数据量不算大,在几百G以内,可以充分利用带宽和I/O吞吐量来达到预期的时间窗口。 而在这个方案之外,考虑到提高性能,我们采用了PCIE-SSD的方案加速I/O,当然使用了和源库不同的分区。 为了使应用的影响降低到最低,我们决定在迁移之后切换IP,使得新的数据库环境拥有原来的IP,这样应用端就无需做任何连接信息的修改了,DB Link的问题也能得到一并解决,无需确认更多的细节。 如果应用有重连机制,那么这种方案之外对于应用是完全透明的,就跟启停一下应用的效果一样。 这种方案使用Datapump迁移前看起来还是照葫芦画瓢,但是细细想来却有一些隐患和需要预先解决的地方,不知道大家看到我提供的背景是否有一些想法。 1.为了降低切换IP带来的繁琐和更多可能的隐患,所以在listener.ora,tnsnames.ora中的host信息都统一为主机名,这样在/etc/hosts中统一修改即可。切换IP后只修改这一处配置即可。 2.Solaris的防火墙信息设置和Linux还是截然不同的。这个里面就有很多信息需要确认。 Solaris环境下的防火墙开通是类似下面的形式: 如果要对10.xxxx的IP开通1522的端口访问权限,使用下面的方式在内存中和文件中都做配置

内存中设置,在线生效,其中e1000g0 为网卡的名称,就跟Linux中的eth0,eth1是一样的。 echo 'pass in quick on e1000g0 proto tcp from 10.xxxxx to any port = 1522' | ipf -f - 在文件中补充

/etc/ipf/ipf.conf ||pass in quick one1000g0 proto tcp from 10.xxxxx to any port = 1522

在Linux下则要简单许多,类似下面的形式 iptables -I INPUT -s 10.xxxx -p tcp -m multiport --dports 1522 -i eth0 -j ACCEPT

如果要写入配置文件,则可以直接service iptables save 这个配置信息的变更让我花了些时间,其中还有一些空格类的,个别语法的差异,最后干脆直接手工来调整了。 3.对于目标库的设置,有一个很大的隐患,就是源库和目标库的文件路径不同,我在上面也提到了使用PCIE-SSD采用了不同的分区,所以如果直接采用全 库导入是肯定会有隐患,倒不是出错,而是会造成资源的浪费。比如源库中的文件路径是/U01/xxxx ,而在目标库是/U02/xxx,在这种情况下如果全库导入,生成的表空间,数据文件都会在/U01下,如果迁移完成之后反应过来,那已经有些晚了,还得重 新再迁移一遍,要么重建控制文件,要么直接rename,在升级窗口有限的时间里这种突发情况花费的时间肯定不是一两分钟,恐惧和慌乱很可能会花去至少 10多分钟的时间。 4.对于未知问题的考虑,我也有一些补充的想法,在源库中导出数据,如果开启大并行,有一种隐患就是老旧的服务器还是有潜在 的风险,如果出现了宕机,那大家可就慌乱了,紧急处理思路就是做Failover,然后在备库端继续尝试导出,如果点更背,还是出现故障,还有异地备库2 ,再次做Failover,这种情况下就赶紧收手,安排下次的迁移了。当然我说的可能是微乎其微的概率,但是这些可能你如果认真想过,就算出了问题也会临 危不太乱。 5.当然对于监控来说,有一个好处是可以统一在Linux下监控了,在Solaris下还总是有一些担心,所以只开启了Orabbix监控。 最后就是认真细心的处理各种可能发生的问题,统筹帷幄,一切尽在掌握之中。

本文分享自微信公众号 - 杨建荣的学习笔记(jianrong-notes),作者:杨建荣

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-07-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 通过shell脚本快速定位active session问题(r4笔记第65天)

    如果你得到反馈,数据库突然间性能下降了好多,希望你能够尽快的定位出问题来,有一些思路和方法可以参考。分别从数据库层面,系统层面来定位,但是个人感觉而言还是不够快...

    jeanron100
  • 最简单的web服务器实现(一)(r4笔记第68天)

    tomcat作为web服务器,想必大家做过web开发的都离不开tomcat了,值得庆幸的是tomcat也是开放源代码的,最近准备好好琢磨琢磨tomcat的源码,...

    jeanron100
  • orion的简单测试 (r8笔记第75天)

    orion是一个做IO测试的小巧工具,可以测试随机读写,模拟混合负载等。 在oracle 11g已经自带包含了这一工具,无须额外的安装了,为IO方面的测试带来了...

    jeanron100
  • MYSQL数据闪回方式

    MYSQL官方截止目前还没有出来数据闪回特性,也许后续版本会出现。社区有一些开源工具可以使用,沿用的基本都是彭立勋最早提出的思路,利用binlog对SQL进行反...

    MySQL轻松学
  • 互联网业务场景下消息队列架构

    消息队列作为一种基础的抽象数据结构,被广泛应用在各类编程与系统设计中。 ? 同步VS异步 通信的一个基本问题是:发出去的消息什么时候需要被接收到?这个问题引出了...

    用户1263954
  • 聊聊claudb的list command

    claudb-1.7.1/src/main/java/com/github/tonivade/claudb/command/list/LeftPushComma...

    codecraft
  • 20个为前端开发者准备的文档和指南8

    1.Meteor: The Official Guide(Meteor官方指南) Meteor介绍的链接地址: http://www.geekpark.net/...

    前朝楚水
  • 聊聊claudb的list command

    claudb-1.7.1/src/main/java/com/github/tonivade/claudb/command/list/LeftPushComma...

    codecraft
  • CCF-GAIR 智能商业论坛:看清 AI 零售三大势力的走向丨CCF-GAIR 2019

    “AI零售”环节将以“融合·共创”为主题,邀请传统零售企业领军者和AI技术公司新锐,重点围绕“商超百货数字化”“未来便利店”“零售视觉AI”三大议题同台论道,为...

    AI掘金志
  • Zabbix添加Ping外网IP监控 原

    注:icmpping[<target>,<packets>,<interval>,<size>,<timeout>]说明:

    拓荒者

扫码关注云+社区

领取腾讯云代金券