Oracle数据库迁移指南

Oracle数据库迁移指南
Oracle数据库迁移指南

Oracle 数据库迁移指南

Oracle 数据库迁移指南
我们常需要对数据进行迁移,迁移到更加高级的主机上,迁移到远程的机房上或者迁 移到不同的平台下.在 Oracle DBA 的日常任务中,数据库迁移也是一项非常重要的工作. 为此,我们对 Oracle 数据库迁移方面的技巧以及策略进行了一定的总结,并列举出一些 在迁移过程中常见的错误,供大家参考,希望能为 DBA 在进行数据库迁移时提供一些灵感.
Oracle 数据库迁移基础知识
在开始展开数据库迁移工作之前,你必须对这部分任务的基础内容有一个较为详细的 了解,正所谓"不打无准备之仗",在这一部分中,我们将对 Oracle 数据库迁移一些较 为基础的知识进行介绍.
初学者的数据迁移问题 Oracle 数据库迁移几种方式 Oracle 数据库迁移与就地升级方法讨论
Oracle 专家建议
Oracle 数据库迁移是一项十分复杂的工程,因此相关经验是很重要的.在这一部分中, 我们将汇总 Oracle 专家针对具体问题的经验与心得,这对于 DBA 来说是相当有价值的参 考.
升级过程中的数据迁移,代码迁移和性能调优问题 使用 Oracle 可传输表空间进行数据库迁移 使用 RMAN 转换命令对 Oracle 数据库进行迁移 从 Unix 到 Linux 的 Oracle 数据库迁移/升级
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 2 of 23

迁移基于 Oracle 数据库的应用到开源数据库 升级过程中加速启动迁移程序 48 小时迁移 2TB 数据库
迁移过程中的常见错误
Oracle 有着丰富的错误代码库,无数 Oracle DBA 都饱受这些错误代码的折磨,当然 在进行数据库迁移时也不例外,在这里我们总结了一些比较常见的 Oracle 数据库迁移错 误,读者可以引以为戒.
数据库迁移过程中出现 OIP-00005 错误 数据库迁移中的 ORA-01034 错误 迁出数据库时出现 ORA-06550 错误
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 3 of 23

初学者的数据迁移问题
问:您好!我在数据迁移领域是个新手.我们有多个 Oracle 数据库.为了更好地组 织所有东西(数据,应用等),给用户提供统一的服务,我们正在寻求各种可选的措施. 我有几个问题: 1. 什么情况下,我们应该把数据放到一个数据库里? 2. 集成数据库,应用和展现层的优缺点是什么?各自合适的时机是什么情况? 任何有关的建议都可以.非常感谢. 答:有一些问题你要先搞清楚: 1. 这些数据库之间有任何形式的关联吗? 2. 你用到跨多数据库的事务了吗? 3. 这些数据库的用途是什么(例如 DSS,或者 OLTP,或者混合模式)? 如果问题(1)和(或者)问题(2)的回答是"是",并且数据库的负载都差不多的 话,我建议最好合并数据库.即便负载不一样,你可以用资源管理器检查各自占用资源. 曾经在一个网站上,我用了五个独立但有业务关联关系的数据库组成了一个非常大的数据 仓库.我把这五个数据库合并到了一起(保留它们属于不同的 schema).合并后的数据库 尽管大,但是易于管理,而且大部分查询和加载数据处理的性能得到了改善.
(作者:Harish Harbham 译者:冯昀晖 来源:TT 中国)
原文标题:初学者的数据迁移问题 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_21402.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 4 of 23

Oracle 数据库迁移几种方式
我们常需要对数据进行迁移,迁移到更加高级的主机上,迁移到远程的机房上,迁移 到不同的平台下 一,exp/imp: 这也算是最常用最简单的方法了,一般是基于应用的 owner 级做导出导入. 操作方法为:在新库建立好 owner 和表空间,停老库的应用,在老库做 exp user/pwd owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000,传 dmp 文件到新库, 在新库做 imp user/pwd fromuser=XXX touser=XXX file=exp_xxx.dmp log=imp_xxx.log ignore=y. 优缺点:优点是可以跨平台使用;缺点是停机时间长,停机时间为从 exp 到网络传输 到新库,再加上 imp 的时间. 二,存储迁移: 这种情况下,数据文件,控制文件,日志文件,spfile 都在存储上(一般情况下是裸 设备),我们可以直接把存储挂到新机器上,然后在新机器上启动数据库. 操作方法:将老库的 pfile(因为里面有指向裸设备的 spfile 链接),tnsnames.ora, listener.ora,密码文件传到新库的对应位置.将存储切至新机,或者用文件拷贝或 dd 的方式复制数据文件,启动数据库. 优缺点:优点是该迁移方式非常简单,主要的工作是主机工程师的工作,dba 只需配 合即可,停机时间为当库,切存储,起库的时间.缺点是要求新老库都是同一平台,是相 同的数据库版本. 三,利用 data guard 迁移: 用 dg 我们不仅可以用来做容灾,物理的 dg 我们还可以作为迁移的方式.
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 5 of 23

操作方法:可见 https://www.360docs.net/doc/c26791565.html,/study-note/dg-created-by-rman/或者 https://www.360docs.net/doc/c26791565.html,/study-note/create-dg-by-rman-one-datafile-by-onedatafile/或者其他相关网文.注意 switch over 之后,可以将 dg 拆掉,去掉 log_archive_dest_2,FAL_SERVER,FAL_CLIENT,standby_file_management 参数.另外 还要注意如果用 rman 做 dg,注意手工添加 tempfile. 优缺点:优点是停机时间短,停机时间为 switch over 的时间.缺点:主机必须双份, 存储必须双份. 四,用 rman 做迁移: rman 比较适合于跨文件系统的迁移,如同平台下的不同文件系统. 操作方法: 1.停第三方的归档备份,如 legato 或 dp 2.backup 数据库: 在一次周末的课程试验中,频繁的看到 Data file init write 等待事件. 在这里做一点记录说明,以下是来自跟踪文件的记录信息:
WAIT #2: nam='Data file init write' ela= 13031 count=1 intr=256 timeout=1 obj#=51706 tim=6068271611 WAIT #2: nam='Data file init write' ela= 118163 count=1 intr=256 timeout=1 obj#=51706 tim=6068392491 WAIT #2: nam='Data file init write' ela= 94036 count=1 intr=256 timeout=1 obj#=51706 tim=6068490286 WAIT #2: nam='Data file init write' ela= 52412 count=1 intr=256 timeout=1 obj#=51706 tim=6068545333
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 6 of 23

WAIT #2: nam='Data file init write' ela= 4 count=0 intr=32 timeout=214748364 7 obj#=51706 tim=6068545596 WAIT #2: nam='Data file init write' ela= 26 count=1 intr=32 timeout=21474836 47 obj#=51706 tim=6068545641 WAIT #2: nam='Data file init write' ela= 101743 count=1 intr=256 timeout=1 obj#=51706 tim=6068648487 WAIT #2: nam='Data file init write' ela= 44854 count=1 intr=256 timeout=1 obj#=51706 tim=6068694281 WAIT #2: nam='Data file init write' ela= 52841 count=1 intr=256 timeout=1 obj#=51706 tim=6068748054 WAIT #2: nam='Data file init write' ela= 48984 count=1 intr=256 timeout=1 obj#=51706 tim=6068798310 WAIT #2: nam='Data file init write' ela= 3 count=0 intr=32 timeout=214748364 7 obj#=51706 tim=6068798365 WAIT #2: nam='Data file init write' ela= 26 count=1 intr=32 timeout=21474836 47 obj#=51706 tim=6068798409 WAIT #2: nam='Data file init write' ela= 101899 count=1 intr=256 timeout=1 obj#=51706 tim=6068900931 WAIT #2: nam='Data file init write' ela= 21 count=1 intr=32 timeout=2147483647 obj#=51706 tim=6068901053
测试数据库是 Oracle10g 10.2.0.3,实际上这个等待事件也是从 Oracle 10g 开始引 入的,用来标识表空间或数据文件扩展时的等待. Oracle 需要将系统块格式化为 Oracle 数据块,然后才能提供数据库使用. 在这个流程处理中,Oracle 经过如下三个步骤: 1.扩展数据文件 select file# from file$ where ts#=:1
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 7 of 23

2.更新用户空间限额 update tsq$ set blocks=:3,maxblocks=:4,grantor#=:5,priv1=:6,priv2=:7,priv3=:8 where ts#=:1 and user#=:2 3.扩展数据段 update seg$ set type#=:4,blocks=:5,extents=:6,minexts=:7,maxexts=:8,extsize=:9,extpct=:10,user #=:11,iniexts=:12,lists=decode(:13, 65535, NULL, :13),groups=decode(:14, 65535, NULL, :14), cachehint=:15, hwmincr=:16, spare1=DECODE(:17,0,NULL,:17),scanhint=:18 where ts#=:1 and file#=:2 and block#=:3 这就是 Oracle10g 中空间扩展时内部流程.
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 8 of 23

Oracle 数据库迁移与就地升级方法讨论
进行 Oracle 数据库升级时,有两种方法可以考虑.有些管理员倾向于选择"就地升 级"方式,就是在现有版本基础上,在同一台机器上安装最新的升级版本.有些管理员则 选择进行数据库"迁移"来完成升级,最新版本的数据库安装在一台新硬件上,你需要做 的是把原有的数据迁移到新的数据库当中.乍一看来,就地升级的方法好像能更简单更迅 速地完成升级工作,但是这种方法也有自己的缺点. 首先,就地升级所需要的停机时间比较长,在整个升级过程中,Oracle 数据库都处于 不可用状态.而且测试就地升级的过程比较困难,数据库管理员需要处理大量的实时数据, 在测试升级过程时还需要把数据库设置成脱机状态.其次,就地升级往往会导致性能的衰 减.新版本的软件对硬件的需求会增加,而不更换硬件就自然会导致性能的下降. 就地升级相对来说比较难以复原,如果在升级过程中出现重大问题或数据损坏时,想 要复原旧的数据库或恢复到升级前的状态就需要一个漫长的备份恢复过程.总而言之,就 地升级需要投入更多的时间和人力物力,不太容易预算其成本,在遇到故障问题时可回旋 的余地也比较小.节省下来的硬件更新成本往往花在了人力上,有时升级需要的钱都超过 了更换硬件的预算. 在进行迁移升级时,虽然会在硬件上花费一些钱,但是这绝对是物有所值的.很明显, 迁移升级最大的优势就是速度.新硬件的速度肯定比原有的要快得多.而且还有一点就是 新硬件都在保修期内,自然会比老硬件更可靠. 新硬件往往也可以进行升级.比如,随着新服务器的部署,上面的操作系统,驱动程 序和相关软件都是最新版本的,这就会让性能更加优越,还可以实现更多的功能.另外, 新硬件有着更好的嵌入式管理能力,比如 Intel's VPRO 和其它一些远程控制特性. 新硬件为升级过程提供了一个清晰路径,这无疑对整个升级过程十分有利.因为旧的 硬件不需要做任何修改,在升级过程中如果出现什么问题,旧的数据库也不会受到影响. 新硬件还可以为升级提供一个测试环境,并对升级的可行性做出评估.在权衡以上两种升 级方法之后,相信大多数的管理员会倾向于选择更新硬件的迁移升级方法.
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 9 of 23

(作者:Frank Ohlhorst 译者:孙瑞 来源:TT 中国)
原文标题:Oracle 数据库迁移与就地升级方法讨论 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_22919.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 10 of 23

升级过程中的数据迁移,代码迁移和性能调优问题
问:我们正在准备迁移到 Oracle 10 RAC.现在(项目中)使用的是 Oracle 8i 和 Oracle 9i 数据库以及基于这两种数据库的应用.目前考虑到有以下几个迁移问题:
数据迁移.怎样高效地迁移数据,并使停机时间最小?我们希望的最理想情况是实
现零停机时间.
代码迁移.怎样快速地发现需要迁移的代码,并修改这些代码? 性能调优.利用 statpack 和 redo log 日志组提供的信息,怎样高效地(自动执行
更理想)创建测试环境进行压力测试和性能调整. 为了在执行数据迁移过程中做到零停机时间,我们正在考虑选用一些传统的数据管理 工具,这些工具可以保证实时捕获和交付多个异构数据库环境的事务.我们的想法是使用 这些工具维护一套并行系统,这样我们在执行数据迁移的过程中有选择继续向前执行迁移 或者回退迁移的余地,直到我们解决了所有问题,就可以把旧系统关掉了.这里的问题是: Oracle 本地工具能做到这些吗?您能评价一下我们的这种思路吗? 关于代码迁移,压力测试和性能优化,您能推荐一些方便的迁移工具吗?最有用的工 具应该能分析当前数据库的负载,并且能在 Oracle 10g 环境中创建压力测试脚本. 答:看来你已经识别出了迁移任务中的比较重要的部分.关于最小化迁移过程中的停 机时间,你可以通过你选择的工具做到零停机时间.无论你选择什么方法或工具,一定要 创建一个测试环境作为生产环境的副本.这样你可以多次操作测试迁移过程,直到没有问 题为止. 关于代码迁移和快速发现并修改,最好的方法就是测试,测试,再测试.对迁移过程 进行测试很重要,但同样重要的是让应用支持团队和商业用户从迁移一开始就对应用进行 功能测试.鼓励应用开发团队和商业用户开发测试计划,并在每次测试数据库迁移过程时 应用这些测试计划.即使在非生产环境中做了足够彻底的测试,我们也仍然可能(事实上 很可能)在真正迁移了生产环境后发现新的问题.
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 11 of 23

最后,关于你提出的压力测试的问题,我知道有一个产品提供了相关功能,它支持 Oracle9i 和 Oracle10g.它就是"Swingbench",这里是它的下载地址.按照 Swingbench 官方网站的信息,"Swingbench 是免费的压力测试负载生成器(也是测试基准),它是专 门为了对 Oracle(9i 和 10g)数据库进行压力测试而设计的".我个人没有用过这个产品, 不过我了解到其他人对它评价不错.
(作者:Maria Anderson 译者:冯昀晖 来源:TT 中国)
原文标题:升级过程中的数据迁移,代码迁移和性能调优问题 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_21297.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 12 of 23

使用 Oracle 可传输表空间进行数据库迁移
问:我现在想要将 11.5TB 大小的 Oracle 9i 数据库从 HP-UX 操作系统迁移到 Sun Solaris 操作系统上,同时将数据库升级为 Oracle 10g,请问该如何操作呢? 在现有的 HP-UX 上我们有一个 VxFS.所以,如果我们使用相同的 VxFS,是否会造成 系统出现问题呢? 答:想要将如此大的数据库从一个操作系统迁移到另一个操作系统中,最好的方法大 概就是使用 Oracle 可传输表空间(TTS)了.而你提到的文件系统在这里无关紧要,不必去 担心 VxFS.想要获得更多的关于 TTS 特性的信息,你可以参考 Oracle 10g 管理员指南, 其中表空间管理一章将会对你很有帮助.
(作者:Brian Peasland 译者:孙瑞 来源:TT 中国)
原文标题:使用 Oracle 可传输表空间进行数据库迁移 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_24638.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 13 of 23

使用 RMAN 转换命令对 Oracle 数据库进行迁移
问:我现在在 HP-UX(Big Endian)上有一个 2TB 大小的 Oracle 9i 数据库,如何将它 迁移到 Linux(Little Endian)操作系统上的 10g 版本?我能使用 RMAN CONVERT DATAFILE / TABLESPACE 吗?我的停机时间窗很短,所以我需要用最快的方法进行迁移.装是否能为 我提供一些建议? 答:当你使用可移动表空间进行数据文件迁移时,RMAN 中的 CONVERT 命令是十分好用 的.首先,在 Linux 系统下,你需要创建一个新的数据库.然后在 HP-UX 这一端,使用 RMAN CONVERT 命令来转换字节序,操作如下: RMAN TARGET / CONVERT TABLESPACE ts1,ts2 TO PLATFORM 'Linux IA (32-bit)' FORMAT '/tempdir/%U'; 将数据文件和 FTP 转换到目标服务器之后(采用二进制模式),使用 TTS 完成 plugging 操作. 如果对 TTS 不熟悉,你可以参看 Oracle 数据库自带文档,上面的介绍很详细.,记 住 TTS 不会传送非分段对象如视图,存储过程等.你需要在目标数据库中重新创建这些对 象.
(作者:Brian Peasland 译者:孙瑞 来源:TT 中国)
原文标题:使用 RMAN 转换命令对 Oracle 数据库进行迁移 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_23148.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 14 of 23

从 Unix 到 Linux 的 Oracle 数据库迁移/升级
问:我想从 Unix 操作系统 上将的 Oracle7.3 数据库迁移到 RedHat Linux 操作系统 上的的 Oracle10g,并且要不损失任何数据.如何展开迁移工作迁移这个数据库?请告诉我 操作步骤. 答:因为你将要做的涉及 Oracle 7 升级到 10g 还有与操作系统的变更,最好的策略 为使应用 Oracle 的导入/导出工具.为了保证无数据丢失,当你导出数据时请确保没有任 何人正在对数据库进行修改.以下步骤概述了升级计划的基本前提: 1,关闭 Oracle7 数据库. 2,启动 Oracle7 访问限制,以保证没有任何人访问此数据库. 3,执行 Oracle 7 的全导出: exp userid=system file=my_dump.dmp full=y 4,在新服务器上,预创建你的 Oracle 10g 数据库. 5,把 dump 文件以二进制模式传到新数据库服务器上. 6,在新数据库上,预创建你将需要的所有用户以及分配表空间. 7,导入整个 dump 文件:imp userid=system file=my_dump.dmp full=y 导入/导出工 具将为您完成升级工作.
(作者:Brian Peasland 译者:孙瑞 来源:TT 中国)
原文标题:从 Unix 到 Linux 的 Oracle 数据库迁移/升级 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_22900.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 15 of 23

迁移基于 Oracle 数据库的应用到开源数据库
问:我们正在评估一个项目,打算用开源数据库软件替换 Oracle 数据库.我们已经 把想移植到开源软件(OSS,Open Source Software)数据库上的应用隔离起来了,但是 我们关心迁移过程需要多大规模的工作量(例如:数据迁移,代码迁移,调试等)才能在 性能,可用性等方面给客户准确无误的迁移结果. 该公司代理告诉我们说他们的开源数据库"对 Oracle 是兼容的",需要很少甚至几 乎不需要额外修改大部分针对 Oracle 数据库开发的应用,"不用修改"就可以迁移到开 源数据库. 我已经下载了他们的"开发环境(Developer Studio)"(他们为执行迁移而提供的 工具箱),该工具似乎提供了同时查看多个数据库,提供 SQL 脚本,数据库性能监视等功 能.但是我感觉还是缺少点什么. 您能对于"无需修改就可以迁移大部分基于 Oracle 数据库的应用"这种观点发表一 些看法吗?这听起来有点太容易了. 答:我对那些声称"应用和数据可以无需任何修改即可迁移到其他产品"的观点也是 持谨慎态度的.想知道他们的声明是否确实属实的唯一方法就是亲自试一试,但我估计迁 移过程中一定会出一些问题.以我的经历来看,甚至连对数据库更新或者打补丁都能引起 性能问题,更不用说迁移到其他产品或者平台了.
你担心迁移应用和数据库牵扯到较大工作量和时间不是没有道理.你得准备好花上大 量时间来计划,测试和执行真正的迁移.这个过程中不但要求你的 IT 部门参与测试,你 的商业用户和应用支持团队都要参与到测试中来. 另一个考虑因素是开源产品的后续支持问题.Oracle 公司提供非常好的客户售后技术 支持,但是开源产品的公司也能在生产环境的数据库宕机或不能用时提供相同服务水平的 技术支持吗?这些都是要考虑的问题.既然开源产品可能给你公司节约一定得成本,那么 在其他方面的效果就会有一定的折扣.
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 16 of 23

如果你决定选择走开源数据库的路线,记得在你的迁移计划中留出充足的时间进行迁 移后的应用测试.在测试上花时间是永远不会浪费的,我从不觉得测试会过多.
(作者:Maria Anderson 译者:孙瑞 来源:TT 中国)
原文标题:迁移基于 Oracle 数据库的应用到开源数据库 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_21556.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 17 of 23

升级过程中加速启动迁移程序
问:我的客户规定为了从 Oracle 9.2.0.4 升级到 Oracle 9.2.0.6,不能出现任何宕 机时间.我们现在正在运行 4-way Oracle RAC,运行环境为 Sun Cluster 3,硬件为 F15K. 在另一个站点上我们还有另一台物理备用数据库(standby database).由于某些原因, 我们不能使用逻辑备用数据库,也不能提供它需要的另外 20-30TB 的存储空间. 如果 Oracle 不提供补丁的滚动升级,我们就一定会有宕机.我们打算在单独的 Oracle Home 里安装 Oracle,并在集群里每个节点上将它修复到 Oracle 9.2.0.6.然后我 们会关闭激活的实例,然后从 Oracle Home 转换到 9.2.0.6 并开始迁移.我的问题就是: 你能给我们介绍一种能加快启动迁移程序,也许还能从 catpatch 脚本里清除一些不必要 步骤的方法吗?另外,从 SYS schema 中删除统计,我们现在还没有想到加快迁移程序的 办法. 答:在升级高可用性系统时这是一个配平操作(balancing act).你需要加快升级 速度,同时又要保证安全.你所说的方法其实是正确的,我个人比较喜欢这种阶段性的升 级方法.要注意的一点就是不要损坏 Oracle Inventory.如果在这个过程中它被损坏,那 对于以后应用补丁和升级就会更加头痛. 另外一种方法就是重新命名 oraInventory 子目录或者在 oraInst.loc 文件里更改 oraInventory 的位置.然后将 Oracle 9.2.0.4 安装到另一个 ORACLE_HOME,并且一直保 存在这个版本中.在迅速停机过程中,你只需要将现存的数据库指向这个 ORACLE_HOME. 这样一来什么都没有改变,数据库还是 9.2.0.4 版本. 然后恢复 oraInst.loc 文件,oraInventory 子目录名称到原来的状态.再将原来的 9.2.0.4 系统升级到 9.2.0.6.在下一次停机时,将数据库指向新升级的 ORACLE_HOME. 对于数据库来说,这样就完成了更新. 以上操作意味着产品系统的两次停机,但是这样操作还是保留了库存的完整性和准确 性,以后的安全补丁(或其他一些一次性的补丁)也能读取和更新库存.你还因为受益于 命名一般的 ORACLE_HOME,如/oracle/product/920 而不是/oracle/product/9206.
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 18 of 23

在产品系统上进行这些操作之前,我要特别强调在非产品系统上进行反复测试的重要 性.只有这样做你才能知道是否存在库存问题,你这种方法是否按照预期目标在运行. 关于更改 catpatch.sql 的问题,我并不赞成你这样做.它也许能够加快你的升级速 度,但是如果你在几周或几个月之后遇到了很难解释的问题,那就不值得了.
(作者:Maria Anderson 译者:孙瑞 来源:TT 中国)
原文标题:升级过程中加速启动迁移程序 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_20906.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 19 of 23

48 小时迁移 2TB 数据库
问:我想要把一个在 Sun 平台上的 Oracle 8i 数据库迁移到 AIX 平台上的 Oracle 9i. 数据库有 2TB 大小,并且停机时间窗限制为 48 小时. 答:数据库有很多迁移或升级的方法,这取决于您的具体情况与要求.假设您的数据 版本是 8.1.7.4,就是可以升级到 Oracle 9i 第二版本的.另外,你可以使用导入/导出工 具完成这个任务.最后,你能应用 SQL 的 copy 命令把您的数据从 8i 中拷贝到新创建的 9i 数据库上.因为您不但要升级数据库,还要移动到另一个操作系统中,所以您不能把数据 库物理地拷贝到 AIX 服务器,之后在此基础上进行升级.您可以应用导入/导出工具或拷 贝交叉地操作数据.因为您要处理的数据有 2TB,所以这两种选择都将很耗时.我建议您 先测试升级过程,以便确定您选择的方法是否满足中断窗的需要. 如果您计划从 Oracle 8i 升级到 10g,则有另外的解决方法即安装 Oracle 10g(如果 您的平台允许运行的话—一定要检查 Oracle 验证矩阵),把 8i 就地升级到到 10g 数据库, 之后利用可移动表空间把数据库转移到 AIX 服务器上.注意,您需要在 AIX 服务器上安装 Oracle 10g.想了解获取更多 Oracle 10g 如何应用可移动表空间,请参阅 Oracle Database 10g Release 2 Administrator's Guide.
(作者:Maria Anderson 译者:司学峰 来源:TT 中国)
原文标题:48 小时迁移 2TB 数据库 链接:https://www.360docs.net/doc/c26791565.html,/showcontent_22958.htm
TT 数据库技术专题之"Oracle 数据库迁移指南"
Page 20 of 23

ORACLE数据备份与数据恢复方案

O R A C L E数据备份与数据恢 复方案 Prepared on 24 November 2020

摘要 结合金华电信IT系统目前正在实施的备份与恢复策略,重点介绍电信业务计算机管理系统(简称97系统)和营销支撑系统的ORALCE数据库备份和恢复方案。 Oracle数据库有三种标准的备份方法,它们分别是导出/导入 (EXP/IMP)、热备份和冷备份。要实现简单导出数据(Export)和导入数据(Import),增量导出/导入的按设定日期自动备份,可考虑,将该部分功能开发成可执行程序,然后结合操作系统整合的任务计划,实现特定时间符合备份规划的备份应用程序的运行,实现数据库的本级备份,结合ftp简单开发,实现多服务器的数据更新同步,实现数据备份的异地自动备份。 关键字:数据库远程异地集中备份 目录

一、前言 目前,数据已成为信息系统的基础核心和重要资源,同时也是各单位的宝贵财富,数据的丢失将导致直接经济损失和用户数据的丢失,严重影响对社会提供正常的服务。另一方面,随着信息技术的迅猛发展和广泛应用,业务数据还将会随业务的开展而快速增加。但由于系统故障,数据库有时可能遭到破坏,这时如何尽快恢复数据就成为当务之急。如做了备份,恢复数据就显得很容易。由此可见,做好数据库的备份至关重要。因此,建立一个满足当前和将来的数据备份需求的备份系统是必不可少的。传统的数据备份方式主要采用主机内置或外置的磁带机对数据进行冷备份,这种方式在数据量不大、操作系统种类单一、服务器数量有限的情况下,不失为一种既经济又简明的备份手段。但随着计算机规模的扩大,数据量几何级的增长以及分布式网络环境的兴起,将越来越多的业务分布在不同的机器、不同的操作平台上,这种单机的人工冷备份方式越来越不适应当今分布式网络环境。 因此迫切需要建立一个集中的、自动在线的企业级备份系统。备份的内容应当包括基于业务的业务数据,又包括IT系统中重要的日志文件、参数文件、配置文件、控制文件等。本文以ORACLE数据库为例,结合金华电信的几个相关业务系统目前正在实施的备份方案,介绍ORACLE数据库的备份与恢复。 二、金华电信ORACLE数据库的备份与恢复方案 由于金华电信IT系统以前只采用逻辑备份方式进行数据库备份,速度较慢并且数据存储管理都很分散,甚至出现备份数据不完整的现象。为了提高备份数据的效率,提供可靠的数据备份,完善备份系统,保证备份数据的完整性,降低数据备份对网络和服务器的影响,对每个IT系统的备份数据进行集中管理,我们对备份工作进行了改进,将逻辑备份与物理备份相结合,在远程建立了一个异地集中、自动在线的备份系统即网络存储管理系统。(这里用到的物理备份指热备份)其具备的主要功能如下:(1)集中式管理 :网络存储备份管理系统对整个网络的数据进行管理。利用集中式管理工具的帮助,系统管理员可对全网的备份策略进行统一管理,备份服务器可以监控所有机器的备份作业,也可以修改备份策略,并可即时浏览所有目录。所有数据可以备份到同备份服

oracle大数据库升级迁移实施参考方案设计

数据库系统和网络存储系统项目 数据库迁移实施方案 文案大全

文档控制 文档修订记录 版本编号变化状态简要说明日期变更人批准日期批准人 V1.0 A 创建文档2010/05 XXX V1.1 M 修改2010/05/18 XXX 审阅 序号姓名职位 分发 序号.姓名地点 文案大全

目录 第一章文档介绍 (5) 1.1背景 (5) 1.2目标 (6) 第二章系统硬件选型 (7) 2.1存储设备 (7) 2.1.1 设备选型 (7) 2.1.2 设备功能及实现 (7) 2.2服务器设备 (7) 2.1.1 数据库服务器 (7) 第三章系统安装 (10) 3.1主机系统安装 (10) 3.2配置SAN网络、磁盘阵列 (11) 3.3配置HACMP (12) 3.4安装数据库软件 (13) 第四章数据移植 (14) 4.1移植准备工作 (14) 4.2移植过程 (15) 4.3系统检查 (16) 数据库检查 (16) 导入后系统需要完成的工作 (16) 应用检查 (17) 4.4系统回退 (17) 第五章应用迁移 (18) 第六章新系统上线后的工作 (18) 第七章工作界面和工作内容 (18) 第八章实施计划 (19) 附件: ............................................................................. 错误!未定义书签。 1.设备、软件验收交付记录.................................................. 错误!未定义书签。文案大全

带有oracle数据库的数据迁移方案

数据迁移技术方案 项目背景 某信息中心系统本次机房搬迁以及数据迁移工程是本次项目需完成的重点工作,包括整个信息中心的核心数据及业务交换中心,系统现有设备包括:核心交换机、接入交换机、服务器、存储盘阵等,迁移主要分设备迁移和数据迁移。系统搬迁具有时间短、系统结构复杂、测试时间长、设备繁多昂贵、人员多、层次复杂等特点。本项目搬迁迁移,时间非常紧,且对设备的稳定性也是一个考验。因此,必须协调好各单位人员的关系,齐心协力才可能在预定时间内完成搬迁迁移工程。 整个迁移工作分两步走,第一步先对数据进行迁移,数据迁移完成确认无误。第二步对整体信息中心所有设备进行迁移,确保所有设备正常运行。 本方案是以尽量不影响信息中心工作或将影响降低到最低为前提的情况下制定的,即先完成新机房网络接入后,确保网络畅通稳定的前提下,完成信息中心系统业务的部署,确保整个系统在新机房业务实现,整个业务系统顺利割接,然后再在特定时间点开始原机房的设备搬迁工作,在1-2工作日内完成整个服务器、网络设备的搬迁、安装及测试。并且在开机以后,继续跟踪系统的运行情况,随时处理系统运行的异常情况。我公司在资源方面有较大优势,如在搬迁迁多工作中出现设备故障,除在备品备件中提供的备件外,还可协调各方资源以最快速度解决客户设备故障问题。

系统环境 第一机房环境 ( 设备分布 第一机房设备共涉及到10个机柜,具体设备名称及数量为:38台pvg server(1810/2800)汇聚服务器、4台pvg server3800核心服务器、26台存储、1台存储控制服务器、5台交换机。 硬件设备情况 汇聚服务器 汇聚服务器品牌为网力产品,38台中32台设备作为汇聚服务器,每台设备使用2个网卡:1个网卡接入单位、另1个网卡接入存储服务器;另外6台为出口服务,只使用1个网卡。设备网口全部接到RG-6806/6810两台交换机上,以便与单位和存储设备通讯。总电口使用量为:32*2+6=70个。 核心服务器 核心服务器品牌为网力产品,4台该设备中2台为负责汇总个单位,另外2台为出口服务。每台设备使用1个网口,网口接到RG-6806/6810上。总电口使用量为:1*4=4。 存储 [ 存储品牌为XX以及部分老存储设备,存储共涉及到17台设备:1台控制器、16台存储。控制服务器使用1个网卡,接入到RG-6810上。16台存储各使用2个网口,每台存储对应两台汇聚服务器,设备网口接入到RG-6810/6806上。总电口使用量为:16*2+1=33个。 交换机

Oracle10g的数据迁移方案

Oracle10g的数据迁移方案 2009-03-27 08:18 Lora是Acme银行的数据库管理员,她现在在该银行高层管理团队高级会议上成了大家最关注的核心人物。这次会议的目的是确定一些方法,来使最终用户能够详细分析公司主数据仓库中的数据。会上提出的一种想法是创建几个小型数据集市--每个集市根据一个特定的职能范围存储数据--这样每个数据集市就可以由专门的团队来使用。 为了有效地实现数据集市的方法,数据专家必须能将数据快速、有效地放入数据集市中。该团队面临的挑战就是解决如何用数据仓库中的数据快速刷新数据集市中的数据,而这些数据集市又运行在各个结构不同的平台上。这就是Lora为什么出席会议的原因。她会为移动数据提出哪些可供选择的方法呢? 作为一名经验丰富、知识渊博的数据库管理员,Lora向与会者提供了三种可能的方法,分别是: 使用可移动表空间 使用数据泵(导入和导出) 拖出表空间 本文介绍Lora对这三种可选方法的解释,包括它们的实施细节和优缺点。 可移动表空间 Lora从可移动表空方法开始介绍。把整个表空间移动到目标系统的最快速方法是用FTP(文件传输协议)或rcp(远程复制)来简单地转移表空间的基本文件。但是,仅仅复制Oracle数据文件还不够,目标数据库必须识别出并导入文件以及相应的表空间,最终用户才能使用表空间数据。使用可移动表空间包括复制表空间文件和使它们中的数据在目标数据库中可用。 在考虑该方法之前必须进行一些审查。首先,对于要转移到目标系统的表空间TS1,它必须是自含式的(self-contained)。也就是说,在该表空间中表的所有索引、分区及其他从属于该表的各数据段都必须在该表空间内部。Lora解释说,如果一个表空间集合包含所有从属的数据段,那么就认为这个集合是自含式的。例如,如果表空间TS1和TS2要作为一个集合进行转移,TS1中的一个表在TS2中有一个索引,则这个表空间集合就是自含式的。但是,如果TS1中的一个表另一个索引在表空间TS3中,则该表空间集合 (TS1, TS2)就不是自含式的。 要移动表空间,Lora提议使用Oracle数据库10g中的数据泵导出(Data Pump Export)工具。数据泵是Oracle的新一代数据转移工具,它替换了早期的Oracle Export (EXP)和Import (IMP)工具。这些老的工具使用正则SQL来提取和插入数据,而数据泵则与它们不同,它使用能绕过SQL缓冲区的专用API,从而使操

Oracle 11G 数据库迁移手册

客户的数据库采用expdp命令导出的,这是Oracle10g以后采用的新的导出方式,比exp 执行效率上有所提高。下面说明如何做导入导出: 1、环境变量设置(在Sqlplus中执行) create or replace directory as ‘c:\tmpdir’; 注:c:\tmpdir也可以是另外的随意目录,用单引号括起来 2、导出ARADMIN库 expdp /@ directory= dumpfile=xxxxxx.dat logfile=xxxx.log schemas=ARADMIN; 3、如果需要备份(通常不需要)CMDB WebService则导出AtriumAdmin库 expdp /@ directory= dumpfile=xxxxxx.dat logfile=xxxx.log schemas=ARADMIN; 4、导出成功后,把dat和log文件都拷贝到目标数据库服务器上,记住两个文件的放 置路径 5、目标库导入前操作 create or replace directory as ‘c:\tmpdir’; 注:此处的c:\tmpdir替换成两个文件的存放路径 Sqlplus登录目标库(一定要用管理员账号); sqlplus /@ as sysdba; 核对连接的库名: show parameter name; 查看连接的是哪个SID; select username from dba_users order by created;查看所有表空间命令的最后两行应该有ARADMIN和ATRIUMADMIN表空间名;

Oracle数据库的数据迁移方法

数据迁移的一般步骤 对数据库管理人员来说,数据库数据迁移极具挑战性,一旦措施不当,珍贵的数据资源将面临丢失的危险,要成功地实现数据库数据平滑迁移,需要周密计划和充分准备,并按照一定的步骤来完成。 设计数据迁移方案 设计数据迁移方案主要包括以下几个方面工作:研究与数据迁移相关的资料,或在网站上查询相关内容、评估和选择数据迁移的软硬件平台、选择数据迁移方法、选择数据备份和恢复策略、设计数据迁移和测试方案等。 进行数据模拟迁移 根据设计的数据迁移方案,建立一个模拟的数据迁移环境,它既能仿真实际环境又不影响实际数据,然后在数据模拟迁移环境中测试数据迁移的效果。数据模拟迁移前也应按备份策略备份模拟数据,以便数据迁移后能按恢复策略进行恢复测试。 测试数据模拟迁移 根据设计的数据迁移测试方案测试数据模拟迁移,也就是检查数据模拟迁移后数据和应用软件是否正常,主要包括:数据一致性测试、应用软件执行功能测试、性能测试、数据备份和恢复测试等。 准备实施数据迁移 数据模拟迁移测试成功后,在正式实施数据迁移前还需要做好以下几个方面工作:进行完全数据备份、确定数据迁移方案、安装和配置软硬件等。 正式实施数据迁移

按照确定的数据迁移方案,正式实施数据迁移。 测试数据迁移效果 按照数据迁移测试方案测试数据迁移效果,并对数据迁移后的数据库参数和性能进行调整,使之满足数据迁移后实际应用系统的需要。 移植系统应用软件 将实际应用系统的应用软件移植到数据迁移后的数据库系统上,并使之正常运行。 正式运行应用系统 在正式实施数据迁移成功并且数据库参数和性能达到要求后,就可以正式运行应用系统,并投入实际使用。 实现向Oracle8i数据迁移

Oracle向Mysql迁移方案

Oracle向Mysql迁移方案 一、可自动迁移部分; 1、表 这个部分的移植是最容易用工具实现的部分,因为很多MySQL的图形管理工具都自带这样的移植工具,比如SQL Yog,MySQL Administrator等。但是,这些工具的移植能力各有不同,对字段类型转换﹑字符集等问题都有自己的处理方式,使用时请注意。 笔者使用“SQL Yog Migration Toolkit”工具按提示步骤移植后,表的主要结构和数据将成功移植,主要包括表的字段类型(经过映射转换,比如number会转换为int,Varchar2会转换为Varchar,date转换为datetime等,请小心处理日期字段的默认值等),表的主键,表的索引(Oracle的位图索引会被转成BTree索引,另外表和字段的注释会丢失)等信息。 注意的是,Oracle的自增字段的处理。大家知道,Oracle通常使用序列sequence 配合触发器实现自增字段,但是MySQL和SQL Server等一样,不提供序列,而直接提供字段自增属性。所以,请把Oracle里面的自增字段实现直接改为MySQL的字段属性,而且,这个字段必须是主键(key)并且不能有默认值。还有一个问题,如果您的应用要直接使用Oracle的某个序列,那么您只能在MySQL里面模拟实现一个,具体方法就是利用MySQL的自增字段实现的。 二、不可自动迁移部分; 视图、过程、函数、触发器 以上对象都是写sql语句进行编程的,两个数据库的有些语法是不一新的,所以这些都要开发人员进行人工修改在mysql中重新创建; 语法区别如下: 视图:mysql中视图不能有子查询,可以把字查询再建一个视 图; 触发器:mysql中触发器中before或after的触发事件(insert、 update、delete)只能有一个,oracle可以有多个; 字符串拼接:oracle直接用’||’,mysql只能用函数’concat’; 判断是否为空:oracle用nvl;mysql用ifnull; 变量定义:oracle可以只写一次DECLARE,Mysql需要在每句前面加 DECLARE 变量赋值:oracle用’:=’,mysql用’=’; 三、Oracle与Mysql几个主要根本区别 1、oracle中的包在mysql中不存在,要全部改成普通的存储过程; 2、用户及权限在oracle中是包含在各自的数据库里,而在mysql是数据库的用户及权 限在一个单独的数据库中(information_schema); 3、Oracle是没有敏感字段,是mysql有,如果有要修改成长非敏感名字; 4、系统架构区别:oracle有主备库,和集群架构(RAC)且RAC是基共享存储的, Mysql有主从复制,和集群架构(ndbcluster),但ndbcluster是非共享 存储的。 四、建立迁移测试环境; 五、迁移实施;

带有oracle数据库的数据迁移方案精编版

数据迁移技术方案 一、项目背景 某信息中心系统本次机房搬迁以及数据迁移工程是本次项目需完成的重点工作,包括整个信息中心的核心数据及业务交换中心,系统现有设备包括:核心交换机、接入交换机、服务器、存储盘阵等,迁移主要分设备迁移和数据迁移。系统搬迁具有时间短、系统结构复杂、测试时间长、设备繁多昂贵、人员多、层次复杂等特点。本项目搬迁迁移,时间非常紧,且对设备的稳定性也是一个考验。因此,必须协调好各单位人员的关系,齐心协力才可能在预定时间内完成搬迁迁移工程。 整个迁移工作分两步走,第一步先对数据进行迁移,数据迁移完成确认无误。第二步对整体信息中心所有设备进行迁移,确保所有设备正常运行。 本方案是以尽量不影响信息中心工作或将影响降低到最低为前提的情况下制定的,即先完成新机房网络接入后,确保网络畅通稳定的前提下,完成信息中心系统业务的部署,确保整个系统在新机房业务实现,整个业务系统顺利割接,然后再在特定时间点开始原机房的设备搬迁工作,在1-2工作日内完成整个服务器、网络设备的搬迁、安装及测试。并且在开机以后,继续跟踪系统的运行情况,随时处理系统运行的异常情况。我公司在资源方面有较大优势,如在搬迁迁多工作中出现设备故障,除在备品备件中提供的备件外,还可协调各方资源以最快速度解决客户设备故障问题。

二、系统环境 1、第一机房环境 1.1. 设备分布 第一机房设备共涉及到10个机柜,具体设备名称及数量为:38台pvg server(1810/2800)汇聚服务器、4台pvg server3800核心服务器、26台存储、1台存储控制服务器、5台交换机。 1.2. 硬件设备情况 1.2.1汇聚服务器 汇聚服务器品牌为网力产品,38台中32台设备作为汇聚服务器,每台设备使用2个网卡:1个网卡接入单位、另1个网卡接入存储服务器;另外6台为出口服务,只使用1个网卡。设备网口全部接到RG-6806/6810两台交换机上,以便与单位和存储设备通讯。总电口使用量为:32*2+6=70个。 1.2.2核心服务器 核心服务器品牌为网力产品,4台该设备中2台为负责汇总个单位,另外2台为出口服务。每台设备使用1个网口,网口接到RG-6806/6810上。总电口使用量为:1*4=4。 1.2.3存储 存储品牌为XX以及部分老存储设备,存储共涉及到17台设备:1台控制器、16台存储。控制服务器使用1个网卡,接入到RG-6810上。16台存储各使用2个网口,每台存储对应两台汇聚服务器,设备网口接入到RG-6810/6806上。总电口使用量为:16*2+1=33个。 1.2.4交换机 交换机品牌为锐捷及H3C。共涉及到5台交换机:RG-6810、RG-6806、RG-7610、H3C 7506、H3C 7506E。设备端口及板卡信息为:

Oracle数据库迁移的几种方式

Oracle数据库迁移的几种方式 我们常常需要对数据进行迁移,迁移到更性能配置更高级的主机OS上、迁移到远程的机房、迁移到不同的平台下,以下介绍ORACLE的几种数据库迁移方案: 一、exp/imp逻辑备份与恢复: 它是最常用最简单的方法,一般是基于应用的owner级做导出导入。 操作方法为: 在新库建立好owner和表空间,停老库的应用,在老库执行: $ exp user/pwd owner=XXX file=exp_xxx.dmp log=exp_xxx.log buffer=6000000, 导入dmp文件到新库,在新库执行如下命令: $ imp user/pwdfromuser=XXX touser=XXX file=exp_xxx.dmp log=imp_xxx.log ignore=y. 优缺点:优点是可以跨平台使用;缺点是停机时间长,停机时间为从exp到网络传输到新库,再加上imp的时间。 二、Storage存储迁移: 这种情况下,数据文件、控制文件、日志文件、spfile都在存储上(一般情况下是裸设备),我们可以直接把存储挂到新机器上,然后在新机器上启动数据库。 操作方法:将老库的pfile(因为里面有指向裸设备的spfile链接),tnsnames.ora,listener.ora,密码文件传到新库的对应位置。将存储切至新机,或者用文件拷贝或dd的方式复制数据文件,启动数据库。 优缺点:优点是该迁移方式非常简单,主要的工作是主机工程师的工作,dba只需配合即可,停机时间为停库、切存储、起库的时间;缺点是要求新老库都是同一平台,是相同的数据库版本。 三、利用data guard迁移: 用dg我们不仅可以用来做容灾,物理的dg我们还可以作为迁移的方式。

数据库软件升级及数据库迁移方案

数据库软件升级及数据库迁移方案 根据本次项目需求,此次项目实施除硬件设备安装调试外,还包括对已有管理系统所用Oracle数据库的升级和管理系统数据的迁移工作,实施方案如下: 一、数据库软件升级 1.1操作系统AIX安装 新购p550小机自带AIX6100操作系统,用启动光盘安装并打好相应补丁; 设置相应环境参数,如:语言环境为简体中文等; 挂载IBM 1814-20A存储,并设成开机自动加载。 1.2 Oracle 10G安装 在存储上安装10g系列中的稳定版本:10.2.0.1并补丁升级至 10.2.0.4; 配置两台小机上所装Oracle,满足数据库的高可用性,保证一台down 机的情况下,另一台能自动接管数据库服务。 二、数据库迁移 2.1迁移前期调研 1、迁移任务的目标 本次项目数据迁移的目的是:将现有ERP系统的二个子系统数据,从低版本到高版本、跨操作系统的方式进行迁移升级,将信息中心现有应用系统数据进行无差异迁移,升级后的目的数据库环境在继承现有数据库所有功能基础上,性能及稳定性需更为完善,从而更好的满足对兴发现有各系统各方面性能的支持。 2、新旧环境分析

2.2迁移各类资源准备 1、人员技术准备 甲方:业务系统管理员; 软件开发商:提供系统维护手册,以搭建模拟应用系统测试数据; 乙方:网络工程师、数据库维护工程师。 2、系统环境准备 正式环境:2台8204-E8A操作系统AIX6100及Oracle10.2.0.4安装 正常; 中转环境:服务器1台、高档PC机2台,数据迁移中转及应用系统 模拟部署及测试用。 3、安装和调测相关软件 操作系统:Windows(临时中转环境) 数据库:Oracle10.2.0.4; 中间件:无; 工具软件:PL/SQL、LoadRun等。 2.3数据迁移方案设计 1、时间安排 模拟环境测试: 模拟结果观察: 正式数据迁移: 2、迁移方案 经过综合分析众多数据迁移相关资料,结合项目经验,本次数据迁移总体方案如下: A、迁移过程直接向10.2.0.4升级 Oracle验证矩阵中无特别强调,可以直接升级为10.2.0.4。 B、采用传统的EXP/IMP方式迁移 本次迁移非本机环境升级,涉及到Windows到AIX操作系统的跨越,另外Oracle版本跨度大,采用Oracle公司提供的EXP/IMP工

Oracle10g的数据迁移方案(好文章要转)

Oracle10g的数据迁移方案(好文章要转) 2008-07-07 11:31 网上看到一个不错的文章,转帖给大家,包括传输表空间解决跨平台及endian-ness问题的处理方法 找到将数据从仓库迁移到集市的最快方法。 Lora 是Acme银行的数据库管理员,她现在在该银行高层管理团队高级会议上成了大家最关注的核心人物。这次会议的目的是确定一些方法,来使最终用户能够详细分析公司主数据仓库中的数据。会上提出的一种想法是创建几个小型数据集市--每个集市根据一个特定的职能范围存储数据--这样每个数据集市就可以由专门的团队来使用。 为了有效地实现数据集市的方法,数据专家必须能将数据快速、有效地放入数据集市中。该团队面临的挑战就是解决如何用数据仓库中的数据快速刷新数据集市中的数据,而这些数据集市又运行在各个结构不同的平台上。这就是Lora为什么出席会议的原因。她会为移动数据提出哪些可供选择的方法呢? 作为一名经验丰富、知识渊博的数据库管理员,Lora向与会者提供了三种可能的方法,分别是: 使用可移动表空间 使用数据泵(导入和导出) 拖出表空间 本文介绍Lora对这三种可选方法的解释,包括它们的实施细节和优缺点。 可移动表空间 Lora 从可移动表空方法开始介绍。把整个表空间移动到目标系统的最快速方法是用FTP(文件传输协议)或rcp(远程复制)来简单地转移表空间的基本文件。但是,仅仅复制Oracle数据文件还不够,目标数据库必须识别出并导入文件以及相应的表空间,最终用户才能使用表空间数据。使用可移动表空间包括复制表空间文件和使它们中的数据在目标数据库中可用。 在考虑该方法之前必须进行一些审查。首先,对于要转移到目标系统的表空间TS1,它必须是自含式的(self-contained)。也就是说,在该表空间中表的所有索引、分区及其他从属于该表的各数据段都必须在该表空间内部。Lora解释说,如果一个表空间集合包含所有从属的数据段,那么就认为这个集合是自含式的。例如,如果表空间TS1和TS2要作为一个集合进行转移,TS1中的一个表在TS2中有一个索引,则这个表空间集合就是自含式的。但是,如果TS1中的一个表另一个索引在表空间TS3中,则该表空间集合(TS1, TS2)就不是自含式的。 要移动表空间,Lora提议使用Oracle数据库10g中的数据泵导出(Data Pump Export)工具。数据泵是Oracle的新一代数据转移工具,它替换了早期的Oracle Export (EXP)和Import (IMP)工具。这些老的工具使用正则SQL来提取和插入数据,而数据泵则与它们不同,它使用能绕过SQL缓冲区的专用API,从而使操作过程速度变得极快。此外,数据泵可以提取特定的对象,如特定的存储过程或特定表空

Mysql迁移Oracle方案

Mysql转Oracle方案2018年1月

1环境准备 1.1导入机 1、安装oracle11g数据库; 2、安装mysql数据库; 1.2oracle生产环境 1、新建DBA用户cssdj_zsy; 2、创建表空间TS_CSSDJ; 3、设置字符集utf8; 1.3Oracle SQL Developer配置 1.3.1配置JDK Oracle SQL Developer第一次使用,需要配置JDK,选择其自带JDK,路径地址为“product\11.2.0\dbhome_1\jdk”。 1.3.2配置第三方JDBC驱动程序 选择“工具”-“首选项”-“第三方JDBC驱动器”,添加项目中使用的即可“mysql-connector-java-5.1.7-bin.jar”。

2数据迁移 2.1数据准备 2.1.1生产数据备份 1、应用停机; 2、备份mysql生产库psc文件,备份表结构和表数据,不备份函数和事件; 2.1.2导入机还原备份文件 1、新建与oracle用户同名数据库cssdj_zsy,字符集utf8; 2、导入备份psc文件到cssdj_zsy; 2.2Oracle SQL Developer配置连接 2.2.1连接本机mysql数据库

2.2.2连接生产oracle数据库 2.3执行迁移 2.3.1关联移植资料档案库 1、选择oracle数据库,右键“移植资料档案库”-“关联移植资料档案库”。 2、成功关联后,左侧栏会出现“捕获的模型”和“转换的模型”。 2.3.2捕获方案 1、选择mysql数据库cssdj_zsy,右键执行“捕获方案”; 2、捕获日志;

windows环境oracle数据库迁移实例

环境描述: 源数据库 Oracle服务器版本: Oracle9.2.0.8 数据库名称db_name = oradb instance_name=oradb 操作系统版本: windows 2003 实例安装位置: $oracle_base = e:\oracle 目标数据库 Oracle服务器版本: Oracle9.2.0.8 数据库名称db_name = orcl instance_name=orcl 操作系统版本: windows xp 实例安装位置: $oracle_base = d:\oracle 执行步骤. 一, 数据库名称和sid要求相同 1.1 数据库名称的相关概念 一, 数据库名 数据库名是数据库的身份证号码, 用于表示一个数据库. 在参数文件(?/database/initSID.ora)中用DB_NAME表示. *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='oradb' *.instance_name='oradb' 数据库名是在安装数据库, 创建新的数据库, 创建数据控制文件, 修改数据库结构, 备份与恢复数据库时都需要使用到的. 查询数据库名称: ?Select name, dbid from v$database; ◆Show parameter db_name; ◆查看参数文件initsid.ora 二, 数据库实例名 数据库实例名是用户和操作系统进行联系的标识, 也就是说数据库和操作系统之间的交互使用的是数据库实例名. 实例名在参数文件中也存在, 该参数为instance_name. 数据库名和实例名可以相同也可以不同, 在一般情况下, 数据库名和实例名是一对一的关系,但如果在oracle并行服务器架构(即oracle实时应用集群)中, 数据库名和实例名是一对多的关系.

Oracle数据迁移技术与方案

Oracle数据迁移技术与方案 姓名: 学号: 指导老师: 系名:软件学院 专业:计算机科学与技术 班级: 11级12班 2012年5月21日

目录 摘要............................................................................................................................................................ - 1 - 第1章ORACLE数据迁移技术............................................................................................................. - 1 - 1.1数据迁移技术 (1) 1.2数据迁移的一般步骤 (1) 1.3O RACLE数据迁移方法 (3) 第2章ORACLE数据迁移方案............................................................................................................. - 6 - 2.1使用可移动表空间 (6) 2.2数据泵导出与导入工具 (6) 2.3拖出表空间 (7) 第3章总结.............................................................................................................................................. - 8 -

Oracle 表空间数据文件迁移

一、系统表空间数据文件迁移: SQL> conn /@study as sysdba 已连接。 SQL>descdba_data_files; 名称是否为空? 类型 ----------------------------------------- -------- ---------------------------- FILE_NAME VARCHAR2(513) FILE_ID NUMBER TABLESPACE_NAME VARCHAR2(30) BYTES NUMBER BLOCKS NUMBER STATUS VARCHAR2(9) RELATIVE_FNO NUMBER AUTOEXTENSIBLE VARCHAR2(3) MAXBYTES NUMBER MAXBLOCKS NUMBER INCREMENT_BY NUMBER USER_BYTES NUMBER USER_BLOCKS NUMBER ONLINE_STATUS VARCHAR2(7) SQL> select file_name,tablespace_name from dba_data_files where tablespace_name= 'SYSTEM'; FILE_NAME -------------------------------------------------------------------------------- TABLESPACE_NAME ------------------------------ D:\ORACLE\PRODUCT\10.2.0\ORADATA\STUDY\SYSTEM01.DBF SYSTEM SQL> shutdown immediate 数据库已经关闭。 已经卸载数据库。 ORACLE例程已经关闭。 SQL> host copy D:\oracle\product\10.2.0\oradata\study\system.dbf d:\oracle\study 系统找不到指定的文件。 SQL> host copy D:\oracle\product\10.2.0\oradata\study\system.dbf d:\oracle\study

mysql数据库迁移到Oracle数据库迁移方案

mysql数据库迁移到Oracle数据库迁移方 案 准备工具 1.连接Mysql 的jdbc 驱动mysql-connector-java-5.0.4-bin.jar 2.Oracle公司开发的SQL Developer 1.2 下面就是配置SQL Developer 1.2 配置环境 选择Tools-Preferences -Database-Third Party JDBC Driver 点击Add Entry 添加Mysql的jdbc 驱动。

配置Mysql 和Oracle 的连接 点击Connection 右键选择New Connection 分别建立Mysql 和Oracle连接。 建立好连接后,你就可以查看你得数据库了。 配置Repository 选择Migration -> Repository Management -> Create Repository创建Repository。

两种迁移数据方式: 1.Capture the source database or tables 2.Convert the captured database or tables 3.Generate DDL for the new Oracle schema objects 4.Run the generated DDL script to create the new user and objects 5.Copy any data from the source database to the new database,select Migration->Migration Data select a converted model. 快速迁移: 选择你要迁移的表或数据库,选择Migration -> Quick Migrate

Oracle数据库迁移方法

Oracle 数据库迁移 1. 背景: 据项目实施人员反映,部署系统的过程中,有一个最大的问题,那就是平台数据库的迁移。经常会遇到表空间导出导入失败,或是导入过程中数据表丢失或是数据表虽然能导入,但表字段丢失等现象。针对这种情况,我仔细分析了一下:主要原因出在目前的exp/imp 这种数据导入导出工具存在比较大的缺陷,这种缺陷将在后面提到。相比目前这种方式,我这里提供一种比较方便稳定的数据库迁移方案。以下提到的方案,我也多次尝试验证了,并且还很实 在。 2. 数据库迁移方案: 实用环境:Oracle10g 或是以上版本。 原理:利用Oracle10g 提供的数据泵,快速加载以及卸载数据。优点:导入导出数据库快速比较快,且完整,性能稳定。缺点:这种方式只能在装有Oracle 服务器端的软件的机器上应用。完整方案: 这里模拟二个场景: 场景1:实现不同库下不同用户之间表空间的迁移。 假设通过Oracle 数据泵, A 用户UserA 将表空间TA 提取到 A.dmp,而后B用户UserB将A.dmp装载到表空间TB。 第一步:首先在源库(A) 上建一个目录,这个目录用于转储导入导出过程中的数据文件及日志文件。 create directory dumpdir as 'E:\dump'; 注:dumpdir为目录名,它是数据库中的目录对象名, “cdump':为对应的磁盘物理路径。 第二步:给用户授予目录的读写权限。(因为要写日志,这一步是必须的) grant read, write on directory dumpdir to UserA;

第三步:导岀用户UserA下的所有对象: expdp UserA/Password@orcl schemas=UserA dumpfile=expa.dmp DIRECTORY= dumpdir 注: 1、orcl为配置的用于从客户端连接Oracle的连接名。 2、dumpfile 中不能再包含路径 以上三步为数据导岀过程,下面几步为数据导入过程。 第四步:在目标库(B)上创建一表空间(TB)(如果不存),已存则直接到下一步。 CREATE TABLESPACE TB LOGGING DATAFILE 'F:\oracle\product\1020\oradata\orclDB\sde.dbf' SIZE 32M AUTOEXTEND ON NEXT 32M MAXSIZE 2048M EXTENT MANAGEMENT LOCAL; 以上是我本机测试代码 第五步:在目标库上创建用户UserB CREATE USER UserB IDENTIFIED BY "sagis" DEFAULT TABLESPACE TB; GRANT DBA TO UserB; 第六步:在目标库(B)上,创建一个目录对象,如果A、B位于同一个Oracle服务器上,则可以不创建,可以用第一步创建的dumpdir 对象。如果A、B位于不同Oracle服务器,则 需另外创建。 create directory dumpdir as 'c:\dump'; 以不同服务器上Oracle迁移为例,则此时要将第三步创建的expa.dmp 数据文件拷到B服务 器的c:\dump 目录下。 第七步:给用户授予目录对象的读写权限,同第二步。 grant read, write on directory dumpdir to UserB; 第八步:导入数据到B库上用户UserB的表空间TB下 impdp UserB/sagis@sgs directory=dumpdir dumpfile=expa.dmp remap_schema=UserA:UserB remap_tablespace=TA:TB,TC:TD

ORACLE数据备份与数据恢复方案

ORACLE数据备份与数据恢复方案

摘要 结合金华电信IT系统当前正在实施的备份与恢复策略,重点介绍电信业务计算机管理系统(简称97系统)和营销支撑系统的ORALCE数据库备份和恢复方案。 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP)、热备份和冷备份。要实现简单导出数据(Export)和导入数据(Import),增量导出/导入的按设定日期自动备份,可考虑,将该部分功能开发成可执行程序,然后结合操作系统整合的任务计划,实现特定时间符合备份规划的备份应用程序的运行,实现数据库的本级备份,结合ftp简单开发,实现多服务器的数据更新同步,实现数据备份的异地自动备份。 关键字:数据库远程异地集中备份

目录 一、前言 ···························································错误!未定义书签。 二、金华电信ORACLE数据库的备份与恢复方案····错误!未定义书签。 2.1 备份系统数据库备份策略··································错误!未定义书签。 2.2 备份系统数据库恢复策略··································错误!未定义书签。 2.3 金华电信97系统及营销支撑系统的系统状况·错误!未定义书签。 2.4 金华电信97系统、营销支撑系统及备份系统总体结构图错误!未定义书签。 2.5 备份系统结构图说明··········································错误!未定义书签。 三、金华电信97系统的数据库备份和恢复 ···········错误!未定义书签。

Oracle超大型数据库数据迁移方法论

龙源期刊网 https://www.360docs.net/doc/c26791565.html, Oracle超大型数据库数据迁移方法论 作者:刘娟 来源:《电脑知识与技术》2016年第30期 摘要:在实践中,一般将容量超过1T的数据库,称之为超大型数据库。在运营过程中,经常会遇到不同的需求,需要对这类数据库的数据进行迁移,该文根据日常运营实践,总结了对Oracle超大型数据库数据采用逻辑迁移的解决方案。 关键词:数据库;逻辑;迁移;数据泵 中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)30-0007-02 通信企业为了支撑业务发展和企业日常管理的需要,建设了规模庞大的IT系统。为了保障IT系统的长期稳定高效的运转,在日常运营过程中,常常会遇到服务器硬件升级扩容、系统软件升级等需求。为了完成这些需求,通常会对数据进行迁移,需要迁移的数据规模从几百G到超过10T。在长期的运营实践中,作者总结了一套完善、成熟的数据迁移方法论,通过该方法论,成功完成了大量系统的数据迁移,累计实现数据迁移规模超过100T,有效的支撑了系统稳定高效的运转。 1 不同迁移方法的对比 数据迁移通常可以采用物理和逻辑两种不同的方法,两种方法的对比见表1。 随着x86硬件平台的性能提高和成熟、Linux系统的稳定、以及基于x86平台虚拟化技术的发展,将会越来越多地出现将数据从小型机平台迁移到x86平台的需求,在这种情况下,逻辑迁移是最常用的一种迁移方法。本文重点讨论逻辑迁移的方法。 2 数据迁移准备工作 迁移前期需要完成的准备工作主要包括以下内容:目标主机数据库软件的安装、创建数据库、创建表空间以及下面的检查工作(注意目标数据库在迁移完成之前需要置为非归档模式)。 3 详细迁移步骤 为了减少逻辑迁移过程中的系统停机时间,需要对数据先进行分类,部分历史或者静态数据在正式迁移前先行导入到目标数据库中,尽量缩小正式迁移过程中的数据量。 10g以前的版本由于无数据泵技术,所以分两种情况讨论。

相关文档
最新文档