买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种数据库的数据迁移方法、装置及设备_杭州数梦工场科技有限公司_201910271970.8 

申请/专利权人:杭州数梦工场科技有限公司

申请日:2019-04-04

公开(公告)日:2021-04-27

公开(公告)号:CN109933632B

主分类号:G06F16/27(20190101)

分类号:G06F16/27(20190101);G06F16/23(20190101)

优先权:

专利状态码:有效-授权

法律状态:2021.04.27#授权;2019.07.19#实质审查的生效;2019.06.25#公开

摘要:本发明提供了一种数据库的数据迁移方法、装置、设备及计算机可读存储介质,该方法包括:确定源单元及目的单元;对源单元进行锁定操作,以阻塞向源单元写入数据;向源单元下发查询全部数据的查命令,并获取与源单元当前包含的全部数据对应的标识信息;对源单元进行解锁定操作,以允许向源单元写入数据;读取源单元响应查命令得到的数据集,将该数据集写入至目的单元中;基于标识信息将下发查命令之后源单元的增量数据实时写入至目的单元中。该数据迁移方法保证了目的单元及源单元的数据一致性,且很大程度上减少了数据迁移对于数据库业务持续性的影响。

主权项:1.一种数据库的数据迁移方法,其特征在于,包括:确定需要实现数据迁移的存储单元为源单元,确定所述源单元中数据需要迁移至的存储单元为目的单元;对所述源单元进行锁定操作,以阻塞向所述源单元写入数据;向所述源单元下发查询全部数据的查命令,并获取与所述源单元当前包含的全部数据对应的标识信息;对所述源单元进行解锁定操作,以允许向所述源单元写入数据;读取所述源单元响应所述查命令得到的数据集,将该数据集写入至所述目的单元中;基于所述标识信息将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中;其中,所述源单元对应数据库具有使得读取的数据集中包含的数据与下发查命令时所述源单元包含的数据一致的多版本并发特性;获取与所述源单元当前包含的全部数据对应的标识信息,包括:查询并记录所述源单元对应数据库当前的系统改变号值;其中,所述系统改变号值为与所述源单元中对应时刻具有的全部数据相对应的标识值。

全文数据:一种数据库的数据迁移方法、装置及设备技术领域本发明涉及数据库技术领域,更具体地说,涉及一种数据库的数据迁移方法、装置、设备及计算机可读存储介质。背景技术数据库是计算机软件中非常核心的组成部分,当应用规模日渐增大,业务逐渐广泛,数据库的规模也逐渐增大,对性能的要求也越来越高。单数据库节点在业务实现、性能、业务可靠度的角度可能满足不了上层应用,这就要用到数据库实时同步技术。发明内容本发明的目的是提供一种数据库的数据迁移方法、装置、设备及计算机可读存储介质,能够避免对需要实现数据迁移的数据库的业务持续性造成影响的前提下实现数据库实时同步技术。为了实现上述目的,本发明提供如下技术方案:一种数据库的数据迁移方法,包括:确定需要实现数据迁移的存储单元为源单元,确定所述源单元中数据需要迁移至的存储单元为目的单元;对所述源单元进行锁定操作,以阻塞向所述源单元写入数据;向所述源单元下发查询全部数据的查命令,并获取与所述源单元当前包含的全部数据对应的标识信息;对所述源单元进行解锁定操作,以允许向所述源单元写入数据;读取所述源单元响应所述查命令得到的数据集,将该数据集写入至所述目的单元中;基于所述标识信息将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中;其中,所述源单元对应数据库具有使得读取的数据集中包含的数据与下发查命令时所述源单元包含的数据一致的多版本并发特性。优选的,获取与所述源单元当前包含的全部数据对应的标识信息,包括:查询并记录所述源单元对应数据库当前的系统改变号值;其中,所述系统改变号值为与所述源单元中对应时刻具有的全部数据相对应的标识值;基于所述标识信息将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中,包括:将所述数据库实时的系统改变号值大于记录的系统改变号值时对应产生的所述源单元的增量数据,均实时写入至所述目的单元中。优选的,将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中,包括:利用所述数据库的LogMinr抓取下发所述查命令之后所述源单元的增量数据日志,并基于所述增量数据日志将对应增量数据实时写入至所述目的单元中。优选的,还包括:接收外界输入的同步终止指令,并在所述同步终止指令的触发下,停止执行将所述源单元的增量数据实时写入至所述目的单元中的步骤。优选的,将所述数据集写入至所述目的单元中之后,还包括:输出已经完成存量数据迁移的提示信息。优选的,输出已经完成存量数据迁移的提示信息,包括:将已经完成存量数据迁移的提示信息发送至指定用户对应终端。优选的,所述源单元及所述目的单元均为数据库表。一种数据库的数据迁移装置,包括:单元确定模块,用于:确定需要实现数据迁移的存储单元为源单元,确定所述源单元中数据需要迁移至的存储单元为目的单元;预备迁移模块,用于:对所述源单元进行锁定操作,以阻塞向所述源单元写入数据;向所述源单元下发查询全部数据的查命令,并获取与所述源单元当前包含的全部数据对应的标识信息;对所述源单元进行解锁定操作,以允许向所述源单元写入数据迁移同步模块,用于:读取所述源单元响应所述查命令得到的数据集,将该数据集写入至所述目的单元中;基于所述标识信息将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中;其中,所述源单元对应数据库具有使得读取的数据集中包含的数据与下发查命令时所述源单元包含的数据一致的多版本并发特性。一种数据库的数据迁移设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上任一项所述数据库的数据迁移方法的步骤。一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述数据库的数据迁移方法的步骤。本发明公开的数据库的数据迁移方案中,需要将源单元的数据迁移至目的单元时,对源单元进行锁定操作及解锁定操作,在两次操作之间下发查询源单元的全部数据的查命令并获取源单元当前包含全部数据对应的标识信息,以使得通过下发查命令指示源单元查询全部数据及获取对应标识信息的过程中,没有新数据写入至源单元中,从而保证标识信息对应数据与通过下发查命令指示源单元查询的数据具有一致性;然后读取源单元查询得到的数据集并将其数据写入至目的单元中,由于源单元对应数据库具有MVCC特性,因此读取得到的数据集包含数据即为下发查命令时源单元包含的全部数据;而由于标识信息与下发查命令时源单元包含的全部数据对应,因此可以基于标识信息确定出源单元相对于查询得到的数据集产生的增量数据,进而将增量数据写入至目的单元中。可见,本申请公开的技术方案能够保证目的单元中数据及源单元中数据的一致性,且由于仅需在锁定操作及解锁定操作之间实现查命令这一命令的下发及标识信息的获取这一动作,因此源单元无法提供写入数据业务的时间非常短,甚至可以使上层业务感知不到,从而很大程度上减少了数据迁移对于数据库业务持续性的影响。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本发明实施例提供的一种数据库的数据迁移方法的流程图;图2为本发明实施例提供的一种数据库的数据迁移方法的示例实现过程;图3为本发明实施例提供的一种数据库的数据迁移装置的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在相关技术中为了实现数据库实时同步技术,出于数据一致性的考虑完成数据库中数据的同步时会暂停源库业务。其中,将需要实现数据迁移的数据库称为源库,需要将源库的数据迁移至的数据库称为目的库。具体来说,首先将源库的上层写业务暂停,导出源库数据后,导入到目的库。完成存量数据迁移后,确保两库数据一致,开始增量数据同步,恢复源库业务。但是这种暂停源库业务的方法对源库的影响程度与数据量正相关,数据量越大,对源库影响时间越长。也即这种方法存在对需要实现数据迁移的数据库的业务持续性造成影响的问题。请参阅图1,其示出了本发明实施例提供的一种数据库的数据迁移方法的流程图,可以包括:S11:确定需要实现数据迁移的存储单元为源单元,确定源单元中数据需要迁移至的存储单元为目的单元。需要说明的是,本发明实施例提供的一种数据库的数据迁移方法的执行主体可以为对应的数据迁移装置。其中,数据库是由一个或者多个数据表组成的,数据表则是由一行或者多行记录组成的,一行记录是由一个或者多个字段组成的;对应的,本申请中的存储单元可以指数据库本身,也可以指数据表或者记录,具体可以根据实际需要设定。确定需要实现数据迁移的源单元及需要将源单元的数据迁移至的目的单元后,则开始实现将源单元的数据迁移至目的单元的步骤。本实施例中的数据库可以是Oracle数据库,但并不限于此,本实施例以Oracle数据库为例进行说明。S12:对源单元进行锁定操作,以阻塞向源单元写入数据;向源单元下发查询全部数据的查命令,并获取与源单元当前包含的全部数据对应的标识信息;对源单元进行解锁定操作,以允许向源单元写入数据。对源单元进行锁定操作,是为了阻塞新数据落入源单元,也即禁止向源单元写入数据;然后向源单元下发查命令,指示源单元查询自身的全部数据并返回,并且获取与源单元当前包含的全部数据对应的标识信息该标识信息可以为与根据实际需要设置的与源单元当前包含的全部数据对应的任意信息,如系统变化号SCNSystemChangeNumber或者与源单元当前包含的全部数据对应的数字编号等,从而通过这种锁定操作,保证查询得到的源单元的全部数据均为与标识信息对应的来自于单个时间点的数据,也即通过对源单元进行锁定及解锁定操作,保证向源单元下发查命令时源单元包含的全部数据与获取与源单元当前包含的全部数据对应标识信息时源单元包含的全部数据具有一致性;然后对源单元进行解锁定操作,从而允许向源单元写入数据,恢复源单元的数据写入业务。另外需要说明的是,本申请在对源单元进行锁定操作之后,完成查命令的下发及标识信息的获取后即可对源单元进行解锁定操作,也即本申请中仅需在对源单元进行锁定操作至解锁定操作之间完成查命令的下发及标识信息的获取即可,而查命令的下发及标识信息的获取为需要时间非常短的两个简单动作,因此,本申请需要对源单元进行锁定的时间非常短,对应的,仅需在这非常短的时间内影响源单元的业务持续性,上层业务基本感知不到,可以一定程度上保证上层业务的正常进行;并且,对源单元进行锁定操作至解锁定操作之间的时间内仅禁止向源单元写入数据,但是不影响查询业务,因此,从这个角度也保证了上层业务的正常进行。其中,对源单元进行锁定操作及解锁定操作可以分别是通过向源单元下发锁定命令及解锁定命令实现的,而锁定命令及解锁定命令均可以根据实际需要进行编写设置;以下列语句为例进行说明,其中,LOCKTABLEtable-NameINSHAREMODE即为锁定命令,同时可以设置为执行完成下列三个语句后即实现查命令下发及标识信息的获取后源单元自动解锁,也即设置为执行完成下列三个语句为解锁定命令。LOCKTABLEtable-NameINSHAREMODE;SELECTCURRENT_SCNFROMV$DATABASE;SELECT*FROMtable-Name。S13:读取源单元响应查命令得到的数据集,将该数据集写入至目的单元中;基于标识信息将下发查命令之后源单元的增量数据实时写入至目的单元中;其中,源单元对应数据库具有使得读取的数据集中包含的数据与下发查命令时源单元包含的数据一致的多版本并发特性。需要说明的是,源单元对应数据库具有使得读取的数据集中包含的数据与下发查命令时源单元包含的数据一致的MVCC特性MultiversionConcurrencyControl,多版本并发特性,因此读取源单元响应查命令所得的数据集也为与标识信息对应的全部数据的数据集。其中,MVCC特性为oracle数据库具有的特性,基于该特性实现相应数据一致性的实现,保证读取得到的数据来自下发查命令时的单个时间点。具体来说,在源单元锁定期间,源单元接收到查命令后返回查询所得数据集,在源单元解锁定之后,数据迁移装置消费该数据集,也即读取数据集并将读取得到的结果写入至目的单元,而MVCC特性正是为了保证消费的数据集与响应查命令得到的数据集一致。由于标识信息为与对应时刻源单元包含的全部数据对应的信息,也即只要确定出标识信息即可确定出标识信息对应时刻源单元包含的全部数据,因此本申请在确定出标识信息对应时刻源单元包含的全部数据后,可以将源单元当前时刻包含的全部数据与标识信息对应时刻源单元包含的全部数据进行比对,两个时刻源单元包含的全部数据中存在不同的数据即为标识信息对应时刻之后源单元产生的增量数据;同时由于标识信息的获取及查命令的下发均是在源单元被锁定时期、禁止向源单元写入数据时进行的,因此两者对应时刻源单元包含的全部数据相同,也因此上述标识信息对应时刻之后源单元产生的增量数据也即为下发查命令之后源单元产生的增量数据,然后将增量数据写入至目的单元实现对应增量数据的同步。其中,将增量数据写入至目的单元即为将增量数据同步至目的单元,包括数据添加、修改及删除等具体操作。从而通过消费源单元返回的数据集实现源单元的存量数据迁移,通过增量数据的同步实现源单元的增量数据同步。本发明公开的数据库的数据迁移方案中,需要将源单元的数据迁移至目的单元时,对源单元进行锁定操作及解锁定操作,在两次操作之间下发查询源单元的全部数据的查命令并获取源单元当前包含全部数据对应的标识信息,以使得通过下发查命令指示源单元查询全部数据及获取对应标识信息的过程中,没有新数据写入至源单元中,从而保证标识信息对应数据与通过下发查命令指示源单元查询的数据具有一致性;然后读取源单元查询得到的数据集并将其数据写入至目的单元中,由于源单元对应数据库具有MVCC特性,因此读取得到的数据集包含数据即为下发查命令时源单元包含的全部数据;而由于标识信息与下发查命令时源单元包含的全部数据对应,因此可以基于标识信息确定出源单元相对于查询得到的数据集产生的增量数据,进而将增量数据同步至目的单元中。可见,本申请公开的技术方案能够保证目的单元中数据及源单元中数据的一致性,存量数据迁移且由于仅需在锁定操作及解锁定操作之间实现查命令这一命令的下发及标识信息的获取这一动作,因此源单元无法提供写入数据业务的时间非常短,甚至可以使上层业务感知不到,从而很大程度上减少了数据迁移对于数据库业务持续性的影响。本发明实施例提供的一种数据库的数据迁移方法,获取与源单元当前包含的全部数据对应的标识信息,可以包括:查询并记录源单元对应数据库当前的系统改变号值;其中,系统改变号值为与源单元中对应时刻具有的全部数据相对应的标识值;基于标识信息将下发查命令之后源单元的增量数据实时写入至目的单元中,可以包括:将数据库实时的系统改变号值大于记录的系统改变号值时对应产生的源单元的增量数据,均实时写入至目的单元中。需要说明的是,本发明实施例提供的一种数据库的数据迁移方法中的数据库具体可以为oracle数据库,系统改变号SCN,SystemChangeNumber是当Oracle数据库更新后,由DBMS自动维护去累积递增的一个数字,因此,每次数据库更新,SCN的值都会增加。本申请中将SCN值作为标识信息,查询并记录在对源单元解锁定之前源单元对应的SCN值源单元的SCN即为源单元对应的数据库的SCN,则可以确定只要后续任一时刻的SCN值大于记录的SCN值,则说明源单元中的数据发生了变化,此时将对应的增量数据同步至目的单元即可,从而利用oracle数据库本身具有的特征实现本实施例需实现的技术方案,无需额外设置特征,简化了操作的同时节省了资源。当然也可以根据实际需要进行其他设定,如将时间戳作为标识信息,均在本发明的保护范围之内。本发明实施例提供的一种数据库的数据迁移方法,将下发查命令之后源单元的增量数据实时写入至目的单元中,可以包括:利用数据库的LogMinr抓取下发查命令之后源单元的增量数据日志,并基于增量数据日志将对应增量数据实时写入至目的单元中。需要说明的是,本发明中实现增量数据的实时同步的具体过程可以根据实际需要选择,本实施例中采用根据增量数据日志的方式实现增量数据的同步,从而能够快速实现增量数据的同步;而LogMinr为oracle数据库具有的一项软件工具,其能够实现oracle数据库中日志的抓取、事务变化操作的跟踪、表操作的跟踪等,本实施例中利用LogMinr实现增量数据日志的抓取,即为利用oracle数据库本身具有的功能实现增量数据对应增量数据日志的抓取,简化了操作的同时节省了资源。并且,利用oracle数据库的LogMinr实现增量数据日志的抓取、进而实现增量数据同步,通过查询的方式实现存量数据迁移,从而在不侵入源单元不侵入源单元则无需在源单元安装驻扎程序,避免安装驻扎程序对源单元性能的消耗的前提下,实现了数据迁移、同步衔接,并且无需使用源单元中的结构,具有源单元结构无关性的优点。本发明实施例提供的一种数据库的数据迁移方法,还可以包括:接收外界输入的同步终止指令,并在同步终止指令的触发下,停止执行将源单元的增量数据实时写入至目的单元中的步骤。需要说明的是,如果外界需要停止增量数据同步,则可以向数据迁移装置输入同步终止指令,数据迁移装置接收到同步终止指令后,即停止源单元增量数据的实时同步,从而使得外界工作人员能够实现对于数据迁移的灵活控制,提升了用户的使用体验。本发明实施例提供的一种数据库的数据迁移方法,将数据集写入至目的单元中之后,还可以包括:输出已经完成存量数据迁移的提示信息。实现源单元的存量数据迁移后,可以向外界输出完成存量数据迁移的提示信息,从而使得外界工作人员可以及时获知该信息,进而在该信息的提示下可以进行相应的操作,如输入同步终止指令或者其他对于数据库的控制指令,提升了用户体验。本发明实施例提供的一种数据库表的数据迁移方法,输出已经完成存量数据迁移的提示信息,可以包括:将已经完成存量数据迁移的提示信息发送至指定用户对应终端。需要说明的是,输出提示信息的具体实现方式可以根据实际需要进行设定,本实施例中优选将提示信息发送至指定用户对应终端,其中,指定用户可以为需要关注存量数据迁移过程的管理员或者其他用户,从而使得特定用户及时获知存量数据迁移情况,进一步提升了用户体验。本发明实施例提供的一种数据库的数据迁移方法,源单元及目的单元均可以为数据库表。需要说明的是,本发明中的存储单元可以为数据库表可简称为表、数据库即数据库表集合,本申请中优选存储单元为数据库表,不仅符合日常实现数据库的数据迁移时的实际需要,并且能够避免以记录为单位实现数据迁移时重复多个步骤才能达到所需迁移数据的情况,进一步方便了数据库的数据迁移。另外,本发明实施例提供的一种数据库的数据迁移方法中的数据库可以为oracle数据库该数据库全称OracleRDBMS,存储单元可以为数据库表,此时本发明实施例提供的技术方案的实现过程可以如图2所示,其中,前置条件为开启源单元的OracleLogMinr,以在后期使用LogMinr实现增量数据日志的抓取;数据表即为数据库表;存量迁移即为存量数据迁移,增量同步即为增量数据同步。具体来说,可以包括以下步骤:对源表进行锁表对应对源单元进行锁定操作;下发查全表命令对应下发查询源单元全部数据的查命令,查询并记录源表对应oracle数据库的SCN对应记录的SCN值;对源表进行解锁表对应对源单元进行解锁定操作;消费查全表结果集写入目的表对应获取查询得到的数据集并写入目的单元;根据SCN消费增量日志写入目的表对应将数据库实时的SCN值大于记录的SCN值时对应产生的源单元的增量数据,均实时写入至目的单元中。本发明实施例还提供了一种数据库的数据迁移装置,如图3所示,可以包括:单元确定模块11,用于:确定需要实现数据迁移的存储单元为源单元,确定源单元中数据需要迁移至的存储单元为目的单元;预备迁移模块12,用于:对源单元进行锁定操作,以阻塞向源单元写入数据;向源单元下发查询全部数据的查命令,并获取与源单元当前包含的全部数据对应的标识信息;对源单元进行解锁定操作,以允许向源单元写入数据;迁移同步模块13,用于:读取源单元响应查命令得到的数据集,将该数据集写入至目的单元中;基于标识信息将下发查命令之后源单元的增量数据实时写入至目的单元中;其中,源单元对应数据库具有使得读取的数据集中包含的数据与下发查命令时源单元包含的数据一致的多版本并发特性。本发明实施例提供的一种数据库的数据迁移装置,预备迁移模块可以包括:查询记录单元,用于:查询并记录源单元对应数据库当前的系统改变号值;其中,系统改变号值为与源单元中对应时刻具有的全部数据相对应的标识值;迁移同步模块可以包括:数据同步单元,用于:将数据库实时的系统改变号值大于记录的系统改变号值时对应产生的源单元的增量数据,均实时写入至目的单元中。本发明实施例提供的一种数据库的数据迁移装置,数据同步单元可以包括:数据同步子单元,用于:利用数据库的LogMinr抓取下发查命令之后源单元的增量数据日志,并基于增量数据日志将对应增量数据实时写入至目的单元中。本发明实施例提供的一种数据库的数据迁移装置,还可以包括:指令响应模块,用于:接收外界输入的同步终止指令,并在同步终止指令的触发下,停止执行将源单元的增量数据实时写入至目的单元中的步骤。本发明实施例提供的一种数据库的数据迁移装置,还可以包括:提示输出模块,用于:将数据集写入至目的单元中之后,输出已经完成存量数据迁移的提示信息。本发明实施例提供的一种数据库的数据迁移装置,提示输出模块可以包括:提示输出单元,用于:将已经完成存量数据迁移的提示信息发送至指定用户对应终端。本发明实施例提供的一种数据库的数据迁移装置,源单元及目的单元均可以为数据库表。本发明实施例还提供了一种数据库的数据迁移设备,可以包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序时实现如上任一项数据库的数据迁移方法的步骤。本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可以实现如上任一项数据库的数据迁移方法的步骤。需要说明的是,本发明实施例提供的一种数据库的数据迁移装置、设备及计算机可读存储介质中相关部分的说明请参见本发明实施例提供的一种数据库的数据迁移方法中对应部分的详细说明,在此不再赘述。另外本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

权利要求:1.一种数据库的数据迁移方法,其特征在于,包括:确定需要实现数据迁移的存储单元为源单元,确定所述源单元中数据需要迁移至的存储单元为目的单元;对所述源单元进行锁定操作,以阻塞向所述源单元写入数据;向所述源单元下发查询全部数据的查命令,并获取与所述源单元当前包含的全部数据对应的标识信息;对所述源单元进行解锁定操作,以允许向所述源单元写入数据;读取所述源单元响应所述查命令得到的数据集,将该数据集写入至所述目的单元中;基于所述标识信息将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中;其中,所述源单元对应数据库具有使得读取的数据集中包含的数据与下发查命令时所述源单元包含的数据一致的多版本并发特性。2.根据权利要求1所述的方法,其特征在于,获取与所述源单元当前包含的全部数据对应的标识信息,包括:查询并记录所述源单元对应数据库当前的系统改变号值;其中,所述系统改变号值为与所述源单元中对应时刻具有的全部数据相对应的标识值;基于所述标识信息将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中,包括:将所述数据库实时的系统改变号值大于记录的系统改变号值时对应产生的所述源单元的增量数据,均实时写入至所述目的单元中。3.根据权利要求2所述的方法,其特征在于,将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中,包括:利用所述数据库的LogMinr抓取下发所述查命令之后所述源单元的增量数据日志,并基于所述增量数据日志将对应增量数据实时写入至所述目的单元中。4.根据权利要求3所述的方法,其特征在于,还包括:接收外界输入的同步终止指令,并在所述同步终止指令的触发下,停止执行将所述源单元的增量数据实时写入至所述目的单元中的步骤。5.根据权利要求4所述的方法,其特征在于,将所述数据集写入至所述目的单元中之后,还包括:输出已经完成存量数据迁移的提示信息。6.根据权利要求5所述的方法,其特征在于,输出已经完成存量数据迁移的提示信息,包括:将已经完成存量数据迁移的提示信息发送至指定用户对应终端。7.根据权利要求6所述的方法,其特征在于,所述源单元及所述目的单元均为数据库表。8.一种数据库的数据迁移装置,其特征在于,包括:单元确定模块,用于:确定需要实现数据迁移的存储单元为源单元,确定所述源单元中数据需要迁移至的存储单元为目的单元;预备迁移模块,用于:对所述源单元进行锁定操作,以阻塞向所述源单元写入数据;向所述源单元下发查询全部数据的查命令,并获取与所述源单元当前包含的全部数据对应的标识信息;对所述源单元进行解锁定操作,以允许向所述源单元写入数据;迁移同步模块,用于:读取所述源单元响应所述查命令得到的数据集,将该数据集写入至所述目的单元中;基于所述标识信息将下发所述查命令之后所述源单元的增量数据实时写入至所述目的单元中;其中,所述源单元对应数据库具有使得读取的数据集中包含的数据与下发查命令时所述源单元包含的数据一致的MVCC特性。9.一种数据库的数据迁移设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述数据库的数据迁移方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述数据库的数据迁移方法的步骤。

百度查询: 杭州数梦工场科技有限公司 一种数据库的数据迁移方法、装置及设备

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。