写点什么

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:54701
用户头像

发布了 1444 篇内容, 共 670.8 次阅读, 收获喜欢 2479 次。

关注

评论

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

接口测试(apipost、jmeter和python脚本)

测试人生路

Python 接口测试 测试工具

JAVA魅力之神奇的数组带给你不一样的乐趣

小Q

Java 学习 架构 面试 数组

5G应用的实时决策

VoltDB

5G 物联网 工业互联网 技术分享

元模型驱动(二)构建元模型ーGME构建分层模型

KaYa

DDD Kaya MDA GME MDD

为什么 React Hooks 优于 HOCs(译)

西贝

Java 翻译 React Hooks HOC

1分钟教你如何整理 React 知识体系

Leo

学习 大前端 React

Go 与异步 IO - io_uring 的思考

IceberGu

Linux 异步IO io_uring Go 语言

元模型驱动(一)构建元模型ーGME入门

KaYa

DDD Kaya MDA GME MDD

java安全编码指南之:文件和共享目录的安全性

程序那些事

代码规范 java安全 java安全编码指南 java编码 程序那些事

训练营第二周课程总结

爱码士

训练营

进“大厂”的故事

北风

职业规划 职业成长 大厂

Scrapy 源码剖析(三)Scrapy有哪些核心组件?

Kaito

Python 爬虫 Scrapy 源码剖析

面试官:讲一下缓存穿透、缓存雪崩和缓存击穿?

bigsai

redis 缓存穿透 缓存击穿 缓存雪崩

Redis还可以做哪些事?

Java旅途

redis

轻量型GPU应用首选 京东智联云推出NVIDIA vGPU实例

京东科技开发者

人工智能 gpu

架构师训练营第 1 期第 7 周作业

业哥

TCP/IP 基础知识总结

苹果看辽宁体育

后端 计算机网络 计算机

基于服务设计的线上展览

京东科技开发者

云安全

酷睿i5-10600KF对标锐龙7 3700X,游戏表现领先且售价更香

E科讯

【架构师训练营 1 期】第六周学习总结

诺乐

网络直播打赏背后的套路:刺激用户不理智消费

石头IT视角

Java-技术专题-时间工具类的使用方案

洛神灬殇

阿里二面惨败,痛定思痛狂刷1000+面试题,成功五面上岸滴滴(面经+面试题分享)

Java架构追梦

Java 架构 腾讯 面试 蚂蚁金服

Scrapy 源码剖析(四)Scrapy如何完成抓取任务?

Kaito

Python 爬虫 Scrapy 源码剖析

训练营第二周作业

爱码士

队列实现栈的3种方法,全都击败了100%的用户!

王磊

Java 算法和数据结构

给打工人熬一锅「毒」鸡汤

Java_若依框架教程

程序员 打工人 毒鸡汤

从零实现一个动态表单设计(编辑)器

徐小夕

Java 编辑器 H5 Node React

Flink State 误用之痛,你中招了吗?

Apache Flink

flink

老板下了死命令,要把日志系统切换到Logback

沉默王二

Java logback 日志系统

【架构师训练营 1 期】第六周作业

诺乐

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