【技术实现步骤摘要】
本专利技术涉及数据库应用技术,尤其涉及Oracle数据库的应用技术。
技术介绍
随着数据库管理系统和操作系统平台更新换代的速度不断加快,数据库工程师经常需要在两个不同的数据库之间或在两种不同的操作系统平台之间进行数据迁移。数据迁移是指将数据从一台机器迁移到另一台机器,或者将数据从一个数据库迁移到另一个数据库,并且这些数据(包括结构定义)在转移后能正常运行。在现有技术中,常用的数据迁移方法主要包括:采用导出/导入(export/import)或者Oracle 10g版本提供的导出/导入(expdp/impdp)方式、insert/*+append*/into...from db_link+nologging、standby迁移方式、利用stream与相关工具进行的数据迁移和基于表空间传输以及Oracle 10g的跨平台数据文件转换结合的方式。但是,上述的这些迁移方式有的停机时间过长,有的难以确定完全同步开始时的SCN点,有的则不能跨平台、跨版本和跨字符集进行数据迁移。
技术实现思路
针对基于Oracle数据库而进行数据迁移时所存在的上述技术缺陷,本专利技术提供了可实现跨平台、跨版本且高效快速的在线数据迁移方法。按照本专利技术的一个方面,提供了一种采用prebuilt mv(materialized view:物化视图)方式进行数据迁移的方法。该方法是指在预先创建好的表上面建立物化视图,当该物化视图被删除的时候,原来已创建好的表仍予以保留,同时同步过来的数据也被保留。该方法采用表对象作为数据迁移的单个对象,并针对该表对象用一个主键刷新mv。首先在源表上创建mv日 ...
【技术保护点】
一种基于Oracle数据库的在线数据迁移方法,其特征在于,该方法采用下列步骤实现: (1)依照预定的容量大小对表对象进行分级,将超过所述预定容量的表对象作为大表,将低于所述预定容量的表对象作为小表; (2)将所述大表作为源表,在源数据库上创建物化视图日志; (3)在目标数据库上创建与所述源表的结构相同的目标表,并在所述目标表上采用prebuilt方式创建物化视图; (4)对同步日志进行完全刷新; (5)对所述同步日志进行增量刷新; (6)创建可实现自动增量刷新的程序代码; (7)按上述步骤(2)-(6)依次处理所有的大表; (8)对采用insert/↑[*]+append↑[*]/into…from db_link处理的小表,整理好insertinto的脚本; (9)运行所述的insert into脚本,对所述小表进行数据迁移;以及 (10)迁移切换。
【技术特征摘要】
1. 一种基于Oracle数据库的在线数据迁移方法,其特征在于,该方法采用下列步骤实现:(1)依照预定的容量大小对表对象进行分级,将超过所述预定容量的表对象作为大表,将低于所述预定容量的表对象作为小表;(2)将所述大表作为源表,在源数据库上创建物化视图日志;(3)在目标数据库上创建与所述源表的结构相同的目标表,并在所述目标表上采用prebuilt方式创建物化视图;(4)对同步日志进行完全刷新;(5)对所述同步日志进行增量刷新;(6)创建可实现自动增量刷新的程序代码;(7)按上述步骤(2)-(6)依次处理所有的大表;(8)对采用insert/*+append*/into...from db_link处理的小表,整理好insertinto的脚本;(9)运行所述的insert into脚本,对所述小表进行数据迁移;以及(10)迁移切换。2. 如权利要求1所述的方法,其特征在于,在执行步骤(3)时,所述源表的结构在所述日志创建完成之后且在迁移数据的复制完成之前保持不变。3. 如权利要求1所述的方法,其特征在于,所述完全刷新仅在第一次同步所述日志时执行。4. 一种基于Oracle数据库的在线数据迁移方法,其特征在于,该方法采用下列步骤实现:(1)依照预定的容量大小对表对象进行分级,将超过所述预定容量的表对象作为大表,将低于所述预定容量的表对象作为小表;(2)将所述大表作为源表,在所述源表上创建数据操纵语言的触发器;(3)在目标数据库上创建与所述源表结构相同的目标表;(4)所述触发器开始工作后,分批载入所述源表中的数据至所述目标数据库的所述目标表中;(5)在所述目标数据库上创建用户自定义的过程;(6)完全刷新由所述触发器产生的同步日志;(7)对所述同步日志进行增量刷新;以及(8)迁移切换。5. 如权利要求4所述的方法,其特征在于,在执行步骤(1)时,对低于所述预定容量的表对象,采用insert/*+append*/into...from db_link进行数据迁移。6. 如权利要求4所述的方法,其特征在于,所述日志的REP_KEY用于存放所述源表的主键,字段类型取决于所述源表的字段类型...
【专利技术属性】
技术研发人员:陈吉平,
申请(专利权)人:阿里巴巴公司,
类型:发明
国别省市:VG[英属维尔京群岛]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。