北京pk10技巧

Oracle数据库的数据迁移方法

来源:互联网
更新时间:2018/2/9 1:24:08
责任编辑:李佳
字体:

这篇论坛文章主要介绍了Oracle数据库的数据迁移方法,详细内容请大家参考下文:

随着数据库管理系统和操作系统平台的更新换代的速度的加快,数据库管理员经常需要在两个不同的数据库之间或在两种不同的系统平台之间进行数据迁移。本文介绍了数据库数据迁移的一般步骤以及实现向Oracle8i数据库进行数据迁移的几种方法,并对它们的优缺点做了对比分析。

北京pk10技巧在开发环境向运行环境转换、低版本数据库向高版本数据库转换以及两个不同数据库之间进行转换时,数据库中的数据(包括结构定义)需要被转移并使之正常运行,这就是数据库中的数据迁移。对于中小型数据库,如Foxpro中的*.dbf,这种迁移非常简单,一般只需通过简单的Copy就能完成。但对于大型数据库系统,如Oracle 数据库,数据迁移就不那么简单了,它需要利用一定的技术和经验,有步骤按计划地完成。

数据迁移的一般步骤

对数据库管理人员来说,数据库数据迁移极具挑战性,一旦措施不当,珍贵的数据资源将面临丢失的危险,要成功地实现数据库数据平滑迁移,需要周密计划和充分准备,并按照一定的步骤来完成。

设计数据迁移方案

设计数据迁移方案主要包括以下几个方面工作:研究与数据迁移相关的资料,或在网站上查询相关内容、评估和选择数据迁移的软硬件平台、选择数据迁移方法、选择数据备份和恢复策略、设计数据迁移和测试方案等。

进行数据模拟迁移

根据设计的数据迁移方案,建立一个模拟的数据迁移环境,它既能仿真实际环境又不影响实际数据,然后在数据模拟迁移环境中测试数据迁移的效果。数据模拟迁移前也应按备份策略备份模拟数据,以便数据迁移后能按恢复策略进行恢复测试。

测试数据模拟迁移

北京pk10技巧根据设计的数据迁移测试方案测试数据模拟迁移,也就是检查数据模拟迁移后数据和应用软件是否正常,主要包括:数据一致性测试、应用软件执行功能测试、性能测试、数据备份和恢复测试等。

准备实施数据迁移

北京pk10技巧数据模拟迁移测试成功后,在正式实施数据迁移前还需要做好以下几个方面工作:进行完全数据备份、确定数据迁移方案、安装和配置软硬件等。

正式实施数据迁移

按照确定的数据迁移方案,正式实施数据迁移。

测试数据迁移效果

北京pk10技巧按照数据迁移测试方案测试数据迁移效果,并对数据迁移后的数据库参数和性能进行调整,使之满足数据迁移后实际应用系统的需要。

移植系统应用软件

北京pk10技巧将实际应用系统的应用软件移植到数据迁移后的数据库系统上,并使之正常运行。

正式运行应用系统

在正式实施数据迁移成功并且数据库参数和性能达到要求后,就可以正式运行应用系统,并投入实际使用。

实现向Oracle8i数据迁移

Oracle数据库数据迁移可以从一个版本迁移到另一个版本(即升级),也可以从一个主版本迁移到另一个主版本(即移植),例如从Oracle7迁移到Oracle8;可以从一个系统平台迁移到另一个系统平台,例如从Unix系统迁移到Windows NT系统;也可以从非Oracle数据库迁移到Oracle数据库,例如从MS SQL Server迁移到 Oracle数据库。在实现Oracle数据库数据迁移前,需要了解以下几个方面的问题:对数据库系统的要求、对 Oracle数据库DB_Block_Size的要求、对Oracle使用字符集的要求、对SQL*NET版本的要求、对操作系统平台的要求等。

北京pk10技巧Oracle数据库系统本身提供了实现Oracle数据库数据迁移的多种工具,我们还可以利用PowerBuilder的数据管道功能实现Oracle数据库数据迁移。当前Oracle数据库的较新版本是Oracle8i,以下介绍可以实现数据库数据迁移到Oracle8i的几种方法:

方法1:移植实用程序(Migration Utility)

北京pk10技巧MIG是Oracle提供的用于Oracle数据库之间数据迁移的命令行方式实用程序。使用MIG迁移Oracle7的数据到Oracle8i的一般步骤为:

北京pk10技巧设置 Oracle7数据库环境变量,包括运行注册表编辑器(regedit.exe)和控制面板,设置Oracle7主目录、字符集和可执行文件路径等,并在DOS 命令提示符下设置Oracle_sid=Oracle7_sid,并正常关闭Oracle7数据库。

北京pk10技巧运行Oracle8i的MIG应用程序,生成一个转换文件,用于数据库转换。

从Windows NT控制面板终止Oracle7数据库服务,并使用实例管理器删除Oracle7数据库服务。

北京pk10技巧设置Oracle8i数据库环境变量,包括运行注册表编辑器(regedit.exe)和控制面板,设置Oracle8i主目录、字符集和可执行文件路径等;由oradim 命令使用Oracle7_sid和init.ora文件创建Oracle8i服务;重新命名数据库控制文件;编辑init.ora文件,设置compatible为8.1.5.0.0;删除init.ora文件中不再使用的参数;在DOS命令提示符下设置Oracle_Sid=Oracle8_sid。

北京pk10技巧实现数据迁移,以内部用户账号连接服务器管理器;以非登录方式启动Oracle8i数据库;由alter database covert命令生成新的控制文件,并把文件头转换为Oracle8i数据库文件格式;由alter database open resetlog命令打开数据库并且重新设置日志文件;由spool migscripts.log命令创建输出目标文件,该文件保存前面命令脚本文件的运行结果;运行u0703030.sql,当使用数据库高级复制功能选项时,运行Catrep.sql,当使用Oracle Parallel Server选项时,运行catparr.sql;由spool out命令结束结果输出,并关闭数据库和备份数据库。 ]

$网神分页符$

查看migscripts.out spool文件,确认脚本文件执行成功,如果脚本文件没有成功执行,返回到脚本文件,检查可能出现的问题。

方法2:Oracle 数据移植助理(Oracle data Migration Assistant)

北京pk10技巧Oracle数据移植助手用于将Oracle7数据库移植到 Oracle8数据库。升级Oracle8数据库较早版本到Oracle8数据库新版本。Oracle数据移植助手不用于升级较低版本Oracle7数据库到较高版本Oracle7数据库。使用Oracle数据移植助手迁移Oracle7数据库数据到Oracle8i的一般步骤是:

北京pk10技巧关闭Oracle7数据库,终止所有Oracle数据库服务;编辑init.ora文件,设置compatible为8.1.5.0.0;删除init.ora文件中不再使用的参数。

北京pk10技巧运行Oracle数据移植助手,在Database Instance页,选择移植的数据库实例,输人internal用户账号密码,并提供init.ora文件位置;在Moving the Database页,指定数据库移植的新位置;如果用户还没有进行备份,在Backup the Database 页,允许用户进行数据库备份;在Character Set页,指定移植后的数据库使用的字符集。

开始移植过程。移植过程需要的时间取决于系统内存容量、硬盘速度、CPU速度等因素。

移植完成后,可以查看Migration Report页,检查移植是否成功执行。如果移植没有成功,应当把数据库系统返回到备份的Oracle7数据库。

编辑init.ora文件,添加在Oracle8i数据库中会用到的参数。删除在移植过程中用到的旧的控制文件。

北京pk10技巧当使用数据库高级复制功能选项时,运行catrep.sql;当使用Oracle Parallel Server选项时,运行catparr.sql。

方法3:导入/导出工具(Export/Import)

北京pk10技巧当需要从一个非PC的系统平台(例如,Unix系统)迁移数据库时,导人/导出方式是一种非常有用的策略,当然相同系统平台的数据迁移导人/导出方式同样适用。采用导入/导出方式迁移Oracle7 Database on Unix到 Oracle8i Database on Windows NT数据库的一般步骤是:

以正常方式关闭Unix系统的 Oracle7数据库系统,不要立即终止或者异常终止,然后冷备份数据库。打开数据库,使用导出工具(Export Utility)进行数据库的完全导出。

在Windows NT系统安装Oracle8i数据库软件并创建启动数据库。

使用FTP,将文件传输到Windows NT计算机。必须使用FTP的binary传输模式,否则,可能造成读导出转储文件错误。

确认目标数据库在运行,并在DOS命令提示符下设置oracle_sid=Oracle8i_SID。

北京pk10技巧使用导出转储文件,执行到目标数据库完全的导人。

查看导入日志文件,确认数据库导入执行成功。

方法4:SQl*Loader工具

SQL*Loader可以将ASCII文件中的数据装入Oracle数据库。ASCII文件中的信息可以来自不同的数据源,例如其他Oracle数据库、非Oracle数据库以及电子表格等。

北京pk10技巧采用SQl*Loader工具将数据迁移到Oracle数据库的一般步骤有:

使用文本文件编辑器创建控制文件。

北京pk10技巧在DOS命令行下使用sqlldr命令装载数据文件。

验证数据是否正确装载。

方法5:SQL*PLUS COPY 命令

使用SQL*PLUS COPY命令,迁移Oracle7数据库到 Oracle8i与导人/导出方式相似,但是,此时需要两个数据库都在线,其一般步骤是:

北京pk10技巧首先安装Oracle8i数据库,并创建一个数据库作为目标数据库。

添加所需的表空间和用户到目标数据库中;安装所需的SQL*Net2或者Net8软件,并配置用于连接数据库的别名。

在DOS命令提示符下设置oracle_sid=Oracle7_sid。

北京pk10技巧以Internal用户账号连接SQL*PLUS。

北京pk10技巧创建一个从Oracle7数据库到Oracle8i数据库的数据库链接;使用SQL*PLUS COPY命令从Oracle7数据库复制表和表内容到Oracle8i数据库。

北京pk10技巧将视图、同义词、存储过程等添加到目标数据库。

方法6:PowerBuilder数据管道工具(Pipeline)

PowerBuilder数据管道工具是PowerBuilder提供的一个用于转换数据的智能对象,它可以在图形方式下实现不同类型数据库间的数据迁移而无需SQL 编程。PowerBuilder数据管道的操作是在图形方式下实现的,因此比较简单,其一般步骤是:

启动PowerBuilder。

点击工具栏上的“DBProfile"按钮,通过ODBC或专用接口配置源和目标数据库连接,同时连接到源和目标数据库。

单击工具栏上的“Pipeline"按钮,建一个新的数据管道,确定好源和目标数据库。

选择要传输数据的表,并根据需要选中想传输的列。

北京pk10技巧选择数据迁移方式,Create-AddTable(在目标库中建立一个新表并复制数据)、Replace-Drop/AddTable(删除旧表并复制数据)、Refresh -DeleteRows(删除表中的现有数据并复制数据)、Append-InsertRows(在现有数据基础上增加新数据)、Update-Update/InsertRows(新增数据的键值如果与现有数据某行的键值一样则覆盖现有数据,否则插入新数据)。

单击“Execute"按钮运行定义好的数据管道完成数据迁移。

北京pk10技巧感谢您对学网(www.xue163.net)的支持!

根据您访问的内容,您可能还对以下内容感兴趣,希望对您有帮助:

怎么将oracle数据库的数据迁移

北京pk10技巧答:迁移的话,直接导出一个库的dmp文件,之后导入到另外一个库里面就可以了(导出和导入数据库版本必须一直,否则导入可能会报错)。 迁移数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中 exp system/manager@T...

请问各位大神,我又一个10T的oracle数据库需要进行...

答:很大的库埃尝试数据泵看看吧。

有没有oracle数据库数据迁移较好的解决方案?

答:这么大的数据量,最好还是用数据泵。 导出数据慢,建议导出时使用参数exclude/include只导出表数据,其他统计信息索引不要加

如何将Oracle数据库数据文件迁移到其它目录

答:Oracle更改数据文件位置 方法一:offline表空间 1、offline表空间:alter tablespace tablespace_name offline; 2、复制数据文件到新的目录; 3、rename修改表空间,并修改控制文件; 4、online表空间; 1、offline表空间zerone SQL> select na...

如何用exp imp实现oracle数据库迁移

答:1、首先按照把server1 的表空间结构,一模一样的在server2上创建好,也就是server1上有什么表空间server2上也都建上 而且大小要分配好。 2、在server2上创建好要迁移的应用用户,应用用户名,用户权限等也要和server1上一样。 3、把server1按USE...

如何将ORACLE数据库数据文件迁移到其它目录

北京pk10技巧答:建用户和授权要用DBA 最简单得建用户: create user 用户名 identified by 密码 用户解锁 alter user 用户名 account unlock(不解锁无法登陆) 授权用 grant 建完用户首先要授权登陆权限 grant create session to 用户名 授权可以授权给角色和...

oracle如何用存储过程完成迁移数据

答:直接新建一个Job,里面些匿名PLSQL程序块即可: BEGIN INSERT INTO B SELECT A.ID, A.ANAME, A,ATYPE FROM A WHERE NOT EXISTS( SELECT 1 FROM B WHERE B.BID = A.AID AND B.BNAME=A.ANAME); END; /

解决oracle两个的数据库之间数据迁移方法

北京pk10技巧答:用工具 数据结构不同的可以手工导入

oracle数据库怎样进行表空间的迁移

北京pk10技巧答:可以使用Oracle的Transportable Tablespaces(TTS)技术 篇幅太长,可以参考我的博客 Oracle Transportable Tablespaces (TTS) http://blog.csdn.net/renfengjun/article/details/19915633?locationNum=7

如何将正在运行的 Oracle 数据库迁移到另一个系统

北京pk10技巧答:基础知识 掌握这些概念有助于您更好地理解我们推荐的系统配置。 计划停机和意外停机 讨论高可用性时,我们需要区分计划停机和意外停机。 计划停机 是指中断日常系统操作的预防性或纠正性维护任务。通常,由于系统的软件和硬件设计方面的限制,这...

Oracle数据库升级或数据迁移方法研究

还有一个原因是随着新版本数据库的出现与成熟,oracle停止了对旧版本数据库的技术支... 跨数据库版本的迁移。 5. 32位数据库升级到64为数据库。 6. 标准版的数据库升级到企...

oracle 数据库数据迁移解决方案

去年年底做了不少系统的数据迁移,大部分系统由于平台和版本的原因,做的是逻辑迁移... 方式进行的冷迁移),虽然注意的是要将数据库设为force logging的方式,在用RMAN做全备...

oracle数据库迁移到MySQL的方法总结

1. 新建数据库的连接 建立需要迁移的Oracle 和 MySQL 的数据库连接。 另外, 建立Oracle 连接的时候还需要下载一个oci.dll 的文件。 下载地址:http://www.oracle.com/techne...

如何将Oracle数据库数据文件迁移到其它目录

"oracle 11g进行数据库迁移"的意思不是很明确。如果是把一个数据库的数据迁移到另外一个数据库中时,与flash_recovery_area没什么关系。flash_recovery_area只是一个闪回...

解决oracle两个的数据库之间数据迁移方法

北京pk10技巧用工具 数据结构不同的可以手工导入

迁移ORACLE数据库的方法

ORACLE命令行工具就可以,首先使用export导出数据,然后在目标服务器使用import命令导入,这两个语句特别是跨平台迁移以及数据量比较大的时候非常有效,采用excel方式数据...

用PlSql对Oracle数据库进行数据迁移

file=d:\daochu.dmp tables=(table1) query=\" where filed1 like  '00%'\"迁移数据的导入  1 将D:\daochu.dmp 中的数据导入 TEST数据库中。

Oracle数据库迁移

1,确定新库和旧库的版本是不是一致 2,导出和导入的用户给相同的权限 3,建不建表空间你要看你原来的库是不是有自己创建的表空间,sys用户不会自动生成用户和表空间,除...

Oracle数据库迁移

把原数据导出啊,再在新服务器上导入,oracle有导入导出功能!办法挺多的其实!也可以导入一个excel里面,在从excel里面导入新服务器,也可以用sql server连接oracle导入sqlserve...

请问如何将oracle数据库中的数据迁移到mysql数据库中? 谢谢

你可以用工具 我给你建议一个开源的图像化界面的工具 kettle,这个工具使用简单可以做抽取和转换,而且支持很多的数据库。


网友评论
最新添加资讯
24小时热门资讯
娱乐时尚
科技资讯
历史文化
真视界
旅游美食
精彩图文
我爱我车
母婴健康
Copyright © 2004-2018 xue163.net All Rights Reserved. 学网 版权所有
京ICP备10044368号-1 京公网安备11010802011102号
北京pk10开奖记录-联盟欢迎您 北京pk10开奖记录-联盟欢迎您 北京pk10开奖记录-联盟欢迎您 北京pk10开奖记录-联盟欢迎您 北京pk10开奖记录-联盟欢迎您 document.write ('');