详细讲解Oracle数据库的数据迁移方法 (2)

277阅读 0评论2008-04-14 sdccf
分类:Oracle

    来源:赛迪网    作者:xiaoqiao

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

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

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

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

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

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

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

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

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

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

当需要从一个非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。

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

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

方法4:SQl*Loader工具

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

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

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

在DOS命令行下使用sqlldr命令装载数据文件。

验证数据是否正确装载。

方法5:SQL*PLUS COPY 命令

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

首先安装Oracle8i数据库,并创建一个数据库作为目标数据库。

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

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

以Internal用户账号连接SQL*PLUS。

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

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

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

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

启动PowerBuilder。

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

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

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

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

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

上一篇:详细讲解Oracle数据库的数据迁移方法 (1)
下一篇:巧用数据库归档技术解决性能下降问题