- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
oracle数据迁移方法
Oracle数据迁移方案
数据迁移通俗的说就是将数据从一个地方转移到另一个地方。主要使用场景有:根据正式系统搭建测试环境、从内网复制到外网、数据库服务器硬件升级等。根据需要迁移的数据量大小、系统架构,可采取不同的迁移方法。
注:以下所说方法,不考虑数据的增量更新、不考虑数据的实时同步、不考虑数据的逻辑转换。如果有这些需求,建议使用第三方ETL工具或使用 HYPERLINK /topicnews.aspx?tid=12 \o Oracle \t _blank Oracle的其他数据同步技术。
一、常用示例
1.1 如何在客户现场搭建测试环境?
常规方案,使用imp/exp工具,先在源库执行直接路径导出操作,然后在目标库执行导入操作。IMP/EXP的执行速度主要受限于磁盘及网络。
数据量:1.5G
导出用时:5分钟
导入用时:23分钟
导出文件大小:641M
导出导入环境:单CPU,700M内存。为力求最大速度,使用直接路径导出、设置最大I/O缓冲、导入导出文件都放在服务器上执行。
1.2 还有没有更快的办法?
有,仍然使用impdp/expdp。只是不再将数据导出后导入,而是直接将数据从源库导入到目的库。
CMD Impdp? testi@目标库? directory=DMPDIR? schemas=TESTI
network_link=源库dblink? remap_schema=TESTI:TESTA
上面语句的操作是将源库的TESTI用户的数据,导入到目标库的TESTA用户下。
这个操作是局域网内迁移数据最方便的工具,不过也可能是速度最慢的工具。
1.3 有没有还快一点的方法?
有,换用impdp/expdp。同样在源库执行导出,在目标库执行导入。操作速度能得到极大提升。IMPDP/EXPDP速度主要受限于磁盘,与网络无关。
原数据大小:1.5G
expdp导出操作用时:5分钟
impdp导入操作用时:22分钟
导出文件大小:588M
导出导入环境:单CPU,700M内存,并行度 = 1
你不是说这个会更快么?为什么速度跟3.1的imp/exp差不多啊?
请看第四部分总结的解释。
1.4 你还敢再快一点么?
使用表空间迁移。将表空间的元数据导出,和数据文件一起,复制到新库。执行元数据导入。一般来说,整个导入导出的数据量不到5M。速度相当快,但使用限制比较多。
导出时间:1分钟
导入时间:3分钟
导出文件:60M + 数据文件1.5G
1.5 如何将数据从linux环境转到windows环境?
查看v$transportable_platform,如果数据编码一致,可尝试直接复制数据文件。否则使用rman或impdp/expdp或imp/exp。
1.6 如果你有一个excel格式的数据表,需要远程更新到客户数据库上,怎么更新?
使用pl/sql developer,复制、粘贴、提交。
1.6 如果你需要将正式库的几张表,迁移到测试库来,怎么弄快些?
用dblink+脚本,或者使用impdp远程导入
二、局部数据的迁移
2.1、广域网的迁移
2.1.1 pl/sql developer
广域网下小数据量的迁移,常用pl/sql developer工具来完成。
在本地打开excel文件,复制数据。然后通过“远程桌面”,到远程服务器的pl/sql界面上粘贴,就可以了。操作简单方便。
第一步:在本地复制数据
第二步:打开远程桌面
第三步:在远程机器的pl/sql里面粘贴数据
第四步:保存数据
这种方法在小数据量下很好用。大数据量时,一个表一个表的粘贴比较麻烦,且一粘贴可能就卡在那里了,得等10来分钟。
2.1.2 imp/exp
广域网内大数据量的迁移,通常使用imp/exp工具。先在源库上使用exp工具,导出数据压缩包,通过网络发送到目标数据库。在目标数据库上再imp。
第一步:本机连接到源库上,执行exp
Exp一般使用直接路径导出,速度可以达到常规路径导出的3倍以上。
参数解释:
Parfile:指定导出的参数配置文件
Log:导出日志输出到哪个文件
recordlength=65535:设置最大I/O缓冲为64K(该参数最大64K)
Direct=y:数据经直接路径导出,不再经SGA导出
Owner=testi:仅导出用户testi的数据。
第二步:本机连接到目标库上,执行imp
Parfile:指定导入的参数配置文件
Log:导入日志输出到哪个文件
Feedback=1000:每导入1000行,在屏幕上输出一个”.”
Buffer设置导入缓冲区大小
Fromuser=testi:仅导入testi用户的数据
Touser=testi:将数据导入到新用户testi下。
2.2、局域网内迁移
局域网内的数
文档评论(0)