速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

Oracle 技术嘉年华:数据迁移最佳实践

  • 2012-11-22
  • 本文字数:1364 字

    阅读完需:约 4 分钟

2012 年 11 月 9 日 -10 日,第二届“Oracle 技术嘉年华”将在北京国宾酒店隆重举行,届时国内外数据库界大师将齐聚北京,为大家奉上两天的技术“大餐”! 本届大会是由 ACOUG、ITPUB、IT168 和云和恩墨共同主办的,会议主题为“数据库技术企业应用最佳实践”。

今天是 Oracle 技术嘉年华 2012 的第二天,在上午举办的分会场中,来自云和恩墨技术总监,Oracle ACE 总监,ACOUG 发起人张乐奕老师,为我们带来了关于《数据迁移最佳实践——从小机到 PC》的话题分享。

▲Data Amount

在迁移前想要数据库回滚问题

在本次演讲中,张乐奕老师特别提到了数据库回滚的问题。“在了解了数据库迁移方法以及相关的方法论后,还有一个问题需要大家要特别考虑,也是在进行数据库迁移之前就要考虑的——怎么样去回滚。”回滚意味着什么? 意味着我们的数据库迁移失败了,因为做任何事都有可能失败,所以我们需要提前考虑合理的解决方案。

▲云和恩墨技术总监,Oracle ACE 总监,ACOUG 发起人张乐奕老师

关于数据库回滚,张乐奕老师介绍了两种情况下的回滚。一种是在迁移的过程中失败了,这种情况比较好处理,因为大家一般都会想到 ; 第二种情况是我们迁移成功了,系统已经成功的运行了一段时间,但之后由于一些原因导致新系统无法使用 (比如数据和应用层之间有无法调和的矛盾,应用不支持数据库),而这时候有一些新的数据,已经在新系统里面,那我们该怎么办?

▲如何进行 rollback?

这里我们分析这两种情况,针对第一种情况,如果我们在迁移过程中失败了,那么最好的解决方法就是不要回滚,如果在迁移过程中,我们没有碰原数据库,那么我们将原数据库重启就好了,不要进行回滚操作。特别是,目前我们遇到的大部分场景,在迁移过程中,都没有必要碰原数据库。

针对第二种情况,如果我们在迁移成功后,要发生回滚,这时我们一定要想要一个同步的机制。无论是用 Goldengate、刷新或者其他方式,包括 Dataguard,一定要有一个同步的机制。同时,这个同步的机制要保持多长时间,都是我们要事先计划好的。

实际案例分析

在本次演讲中,张乐奕老师讲到了一个实际案例,来阐述他们是如何在短时间内成功迁移一个数据量庞大的数据库的。据介绍,本次迁移共有 10TB 的数据量,共在五个小时完成。

▲相关的 Case

其中,针对这 10TB 的数据,我们将其中 99% 的数据,放在几张大的表里面,并且不是分析表,是单表 ; 原平台是 IBM AIX,目标平台是 RHEL x86-64; 原平台是 10.2.0.4 RAC,目标平台是 10.2.0.4 RAC,这是整个项目的一个大概情况。

具体方法

首先,我们将所有的大表用 Goldengate 做同步,这项工作大概需要一周的时间,并且在这段时间内,是不需要停机的。这里需要说明的是,可能大家看起来这个方法很简单,但实际并不是这样。因为这里的数据表非常大,一个将近 8TB 的单表,做 Goldengate 做同步并不是很容易。根据以往的例子看,同步这一张大表,需要一个月的时间,而我们只用了一个星期,完成这张表的初始化以及数据同步。

其次,是多种方法并在一起用。首先,针对剩余的 60GB 的数据量,我们做 Datapump 的到处和导入,其中我们用到了自己的并行。这个步骤,我们一共用了 80 分钟的时间,这也是数据库停机的所有时间。其中,我们用了 15 分钟做 expdp、10 分钟做 scp、55 分钟做 impdp。

查看原文地址 http://tech.it168.com/a2012/1110/1420/000001420194_all.shtml

2012-11-22 04:54732
用户头像

发布了 1457 篇内容, 共 686.2 次阅读, 收获喜欢 2482 次。

关注

评论

发布
暂无评论
发现更多内容

Web3极客日报 #133

谢锐 | Frozen

区块链 技术社区 Rebase

为什么开源是基础软件的未来

顾钧

开源 基础软件

容器日志采集利器:Filebeat深度剖析与实践

傅轶

Kubernetes 容器 云原生 日志 Filebeat

消息队列Kafka - 基本应用

Java收录阁

kafka

重要:Kafka第3篇之一条消息如何被存储到Broker上

z小赵

kafka

没有了手机的诺基亚,过得远比你想象的要好

赵新龙

微软 手机 上市 诺基亚

科技 vs 隐私:瘟疫下“以健康为名”会将我们推向何方?

陶乐思

面向兴趣编程 - 一条微博和一个小程序的故事

遇见

小程序 微信小程序 副业 面向兴趣编程

Disruptor 高效的秘密-Sequencer

Rayjun

Java 并发编程 Disruptor

为什么最该祝自己劳动节快乐

石君

劳动 劳动节 励志

如何表达自己的感情?

zkh

苟富贵,勿相忘

十三

Web3极客日报 #132

谢锐 | Frozen

区块链 创业 独立开发者 技术社区 Rebase

HTTP的德性

十三

消息队列Kafka - 原理分析

Java收录阁

kafka

我所想的跨平台开发:小程序+App+Web

曾伟@喵先森

flutter 小程序 微信小程序 跨平台

张小龙 的 22 年和微信的 8 年

池建强

微信 张小龙

思考如何节省时间,节省出时间进行思考

伯薇

思考 时间管理 思考力 工作效率 提升效率

Block底层原理探析

Damien

ios 源码分析

OKR实践中的痛点(3):破3旧,迎3新!

大叔杨

OKR Scrum 敏捷 敏捷开发 绩效

游戏夜读 | 2020周记(4.10-4.17)

game1night

万字破解云原生可观测性

谭建

云原生 APM 可观测性 链路追踪 Skywalking

以物理学思维破解分布式系统的本质

常平

分布式

改变

一把梭

生活 随笔

Web3极客日报#131

谢锐 | Frozen

区块链 创业 独立开发者 技术社区 Rebase

论十三

十三

Java并发编程系列——常用并发工具类

孙苏勇

Java Java并发 并发编程 多线程

Web3极客日报#130

谢锐 | Frozen

区块链 创业 独立开发者 技术社区 Rebase

《我是余欢水》与《一个叫欧维的男人决定去死》

十三

如何成为一个靠谱的人

熊斌

个人成长 团队协作

程序员陪娃漫画系列——喂药

孙苏勇

程序员 生活 陪伴 漫画

Oracle技术嘉年华:数据迁移最佳实践_架构_InfoQ 中文站_InfoQ精选文章