CN106682021B - 数据库迁移方法及装置 - Google Patents

数据库迁移方法及装置 Download PDF

Info

Publication number
CN106682021B
CN106682021B CN201510759546.XA CN201510759546A CN106682021B CN 106682021 B CN106682021 B CN 106682021B CN 201510759546 A CN201510759546 A CN 201510759546A CN 106682021 B CN106682021 B CN 106682021B
Authority
CN
China
Prior art keywords
database
data
original
recording
timeliness
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510759546.XA
Other languages
English (en)
Other versions
CN106682021A (zh
Inventor
陈东
田光曙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wu Ba Tongcheng Information Technology Co ltd
Original Assignee
Wu Ba Tongcheng Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wu Ba Tongcheng Information Technology Co ltd filed Critical Wu Ba Tongcheng Information Technology Co ltd
Priority to CN201510759546.XA priority Critical patent/CN106682021B/zh
Publication of CN106682021A publication Critical patent/CN106682021A/zh
Application granted granted Critical
Publication of CN106682021B publication Critical patent/CN106682021B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据库迁移方法及装置。该方法包括:在将数据从原数据库迁移到目标数据库的起始时刻,通过数据库代理层记录从起始时刻开始原数据库中业务产生的非时效性数据的写入操作,并记录截止点;在数据迁移到目标数据库后,根据数据库代理层的记录,在目标数据库中依次逐条重新执行原数据库中业务产生的非时效性数据的写入操作,直到截止点结束操作。借助于本发明的技术方案,能够避免数据迁移过程中的数据丢失。保障业务的正常进行。

Description

数据库迁移方法及装置
技术领域
本发明涉及计算机技术领域,特别是涉及一种数据库迁移方法及装置。
背景技术
企业随着自身的壮大发展,当现有数据库不能够满足业务发展的需求时,存在数据库迁移的需求,即将数据从原数据库中,转移到新的数据库。其中,原数据库和新的数据库可能位于不同地区的两个机房内。在数据迁移的过程中,因为业务是持续不断的,即不间断的有新数据的存储请求和数据库中数据的读取请求。在此期间业务产生的数据,同样需要从旧的数据库,迁移到新的数据库。也就是说,因为业务数据持续不断的产生,在切换的过程中,也会产生大量的数据,此时这些数据因为没有存在旧的数据库中,也没在新数据库中,造成业务数据的丢失。
发明内容
鉴于现有技术中的上述问题,提出了本发明以便提供一种克服上述问题的数据库迁移方法及装置。
本发明提供一种数据库迁移方法,包括:
在将数据从原数据库迁移到目标数据库的起始时刻,通过数据库代理层记录从起始时刻开始原数据库中业务产生的非时效性数据的写入操作,并记录截止点;
在数据迁移到目标数据库后,根据数据库代理层的记录,在目标数据库中依次逐条重新执行原数据库中业务产生的非时效性数据的写入操作,直到截止点结束操作。
本发明还提供了一种数据库迁移装置,包括:
记录模块,用于在将数据从原数据库迁移到目标数据库的起始时刻,通过数据库代理层记录从起始时刻开始原数据库中业务产生的非时效性数据的写入操作,并记录截止点;
回放模块,用于在数据迁移到目标数据库后,根据数据库代理层的记录,在目标数据库中依次逐条重新执行原数据库中业务产生的非时效性数据的写入操作,直到截止点结束操作。
本发明有益效果如下:
通过在数据库代层记录在数据迁移过程中的持续的数据写入请求,并重新执行记录的请求写入数据到新的数据库,能够避免数据迁移过程中的数据丢失。保障业务的正常进行。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明实施例的数据库迁移方法的流程图;
图2是本发明实施例的数据库迁移装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为了解决现有技术中的问题,本发明提供了一种数据库迁移方法及装置,记录在数据迁移过程中的持续的数据写入请求,并重新执行记录的请求写入数据到新的数据库。以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
方法实施例
根据本发明的实施例,提供了一种数据库迁移方法,图1是本发明实施例的数据库迁移方法的流程图,如图1所示,本发明实施例的数据库迁移方法包括如下处理:
步骤101,在将数据从原数据库迁移到目标数据库(迁移是指:首先备份原数据库中数据,随后导入目标数据库)的起始时刻,通过数据库代理层记录从起始时刻开始原数据库中业务产生的非时效性数据的写入操作,并记录截止点;
在步骤101中,可以通过数据库代理层以序列的形式记录从起始时刻开始原数据库中业务产生的非时效性数据的写入操作。
其中,记录截止点具体包括:
在确定目标数据库和原数据库的非时效性数据完全同步时,数据库代理层停止记录原数据库中业务产生的非时效性数据的写入操作,并记录截止点。
步骤102,在数据迁移到目标数据库后,根据数据库代理层的记录,在目标数据库中依次逐条重新执行原数据库中业务产生的非时效性数据的写入操作,直到截止点结束操作。
需要说明的是,在目标数据库中依次逐条重新执行原数据库中业务产生的非时效性数据的写入操作时,还会有新的业务产生的非时效性数据的写入操作,从而这些写入操作还是需要在旧库中执行,并进行记录,与此同时,目标数据库也在同时执行记录中的写入操作,并且与原数据库越来越近,直到确定目标数据库和原数据库的非时效性数据完全同步后,就可以停止旧数据库的记录了。
从上述处理可以看出,在备份原数据库中数据,并导入目标数据库过程中,针对非时效性数据,为避免数据丢失,可以在数据库代理层增加新功能或者单独设立记录回放模块,记录在迁移过程中,原数据库的写入操作:可以通过序列化的形式,记录对原数据库的每一次写入操作;即在数据备份的起始点开始记录在数据迁移过程中的数据处理情况,并记录备份截止点。当数据迁移完成之后,该记录回放模块根据其记录的数据写入操作,从指定时间点回放重新发送数据写入请求到目标数据库,目标数据库根据请求,重新执行数据写入到新的数据库,直至截止点。
在本发明实施例中,针对时效性数据(时效性数据是指在数据库中具有时效的数据,超过这个时效,就会删除这些数据),在将数据从原数据库迁移到目标数据库的过程中,同时对原数据库和目标数据库同时写入业务产生的时效性数据,直到目标数据库和原数据库的时效性数据完全同步后,完成数据从原数据库到目标数据库的迁移。在未完成数据从原数据库到目标数据库的迁移之前,在原数据库中执行对时效性数据的查询操作。
也就是说,为保证迁移过程中数据的不丢失,采用双写的方式,即在迁移的过程中,在一段时间内,同时对目标数据库和原数据库都写入业务产生的时效性数据。持续一段时间后,如果两个数据库的时效性数据一致,则可以将业务完全转移到新数据库,完成数据迁移。上述过程中,数据的查询操作,仍然旧数据库中执行。
综上所述,借助于本发明实施例的技术方案,通过在数据库代层记录在数据迁移过程中的持续的数据写入请求,并重新执行记录的请求写入数据到新的数据库,能够避免数据迁移过程中的数据丢失。保障业务的正常进行。
装置实施例
根据本发明的实施例,提供了一种数据库迁移装置,图2是本发明实施例的数据库迁移装置的结构示意图,如图2所示,根据本发明实施例的数据库迁移装置包括:记录模块20、以及回放模块22,以下对本发明实施例的各个模块进行详细的说明。
记录模块20,用于在将数据从原数据库迁移到目标数据库的起始时刻,通过数据库代理层记录从起始时刻开始原数据库中业务产生的非时效性数据的写入操作,并记录截止点;
记录模块20具体用于:在确定目标数据库和原数据库的非时效性数据完全同步时,将数据库代理层停止记录原数据库中业务产生的非时效性数据的写入操作,并记录截止点。记录模块20可以通过数据库代理层以序列的形式记录从起始时刻开始原数据库中业务产生的非时效性数据的写入操作。
回放模块22,用于在数据迁移到目标数据库后,根据数据库代理层的记录,在目标数据库中依次逐条重新执行原数据库中业务产生的非时效性数据的写入操作,直到截止点结束操作。
上述装置进一步包括:
双写模块,用于在将数据从原数据库迁移到目标数据库的过程中,同时对原数据库和目标数据库同时写入业务产生的时效性数据,直到目标数据库和原数据库的时效性数据完全同步后,完成数据从原数据库到目标数据库的迁移。
查询模块,用于在未完成数据从原数据库到目标数据库的迁移之前,在原数据库中执行对时效性数据的查询操作。
本发明实施例各个模块的具体操作可以参照方法实施例进行理解,在此不再赘述。
综上所述,借助于本发明实施例的技术方案,通过在数据库代层记录在数据迁移过程中的持续的数据写入请求,并重新执行记录的请求写入数据到新的数据库,能够避免数据迁移过程中的数据丢失。保障业务的正常进行。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的客户端中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个客户端中。可以把实施例中的模块组合成一个模块,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者客户端的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的加载有排序网址的客户端中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (6)

1.一种数据库迁移方法,其特征在于,包括:
在将数据从原数据库迁移到目标数据库的起始时刻,通过数据库代理层记录从所述起始时刻开始原数据库中业务产生的非时效性数据的写入操作,并记录截止点;
在数据迁移到目标数据库后,根据所述数据库代理层的记录,在目标数据库中依次逐条重新执行原数据库中业务产生的非时效性数据的写入操作,直到截止点结束操作;
通过数据库代理层记录从所述起始时刻开始原数据库中业务产生的非时效性数据的写入操作具体包括:
通过数据库代理层以序列的形式记录从所述起始时刻开始原数据库中业务产生的非时效性数据的写入操作;
在将数据从原数据库迁移到目标数据库的过程中,同时对原数据库和目标数据库同时写入业务产生的时效性数据,直到目标数据库和原数据库的时效性数据完全同步后,完成数据从原数据库到目标数据库的迁移。
2.如权利要求1所述的方法,其特征在于,所述记录截止点具体包括:
在确定目标数据库和原数据库的非时效性数据完全同步时,所述数据库代理层停止记录原数据库中业务产生的非时效性数据的写入操作,并记录截止点。
3.如权利要求1所述的方法,其特征在于,所述方法进一步包括:
在未完成数据从原数据库到目标数据库的迁移之前,在原数据库中执行对所述时效性数据的查询操作。
4.一种数据库迁移装置,其特征在于,包括:
记录模块,用于在将数据从原数据库迁移到目标数据库的起始时刻,通过数据库代理层记录从所述起始时刻开始原数据库中业务产生的非时效性数据的写入操作,并记录截止点;
回放模块,用于在数据迁移到目标数据库后,根据所述数据库代理层的记录,在目标数据库中依次逐条重新执行原数据库中业务产生的非时效性数据的写入操作,直到截止点结束操作;
所述记录模块具体用于:
通过数据库代理层以序列的形式记录从所述起始时刻开始原数据库中业务产生的非时效性数据的写入操作;
双写模块,用于在将数据从原数据库迁移到目标数据库的过程中,同时对原数据库和目标数据库同时写入业务产生的时效性数据,直到目标数据库和原数据库的时效性数据完全同步后,完成数据从原数据库到目标数据库的迁移。
5.如权利要求4所述的装置,其特征在于,所述记录模块具体用于:
在确定目标数据库和原数据库的非时效性数据完全同步时,将所述数据库代理层停止记录原数据库中业务产生的非时效性数据的写入操作,并记录截止点。
6.如权利要求4所述的装置,其特征在于,所述装置进一步包括:
查询模块,用于在未完成数据从原数据库到目标数据库的迁移之前,在原数据库中执行对所述时效性数据的查询操作。
CN201510759546.XA 2015-11-09 2015-11-09 数据库迁移方法及装置 Active CN106682021B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510759546.XA CN106682021B (zh) 2015-11-09 2015-11-09 数据库迁移方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510759546.XA CN106682021B (zh) 2015-11-09 2015-11-09 数据库迁移方法及装置

Publications (2)

Publication Number Publication Date
CN106682021A CN106682021A (zh) 2017-05-17
CN106682021B true CN106682021B (zh) 2021-09-28

Family

ID=58863598

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510759546.XA Active CN106682021B (zh) 2015-11-09 2015-11-09 数据库迁移方法及装置

Country Status (1)

Country Link
CN (1) CN106682021B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357883A (zh) * 2017-06-30 2017-11-17 北京奇虎科技有限公司 数据迁移方法及装置
CN109660576B (zh) * 2017-10-10 2021-09-07 武汉斗鱼网络科技有限公司 用户数据实时迁移方法、存储介质、电子设备及系统
CN109669927A (zh) * 2018-11-27 2019-04-23 南京苏宁易付宝网络科技有限公司 一种数据源切换方法及系统
CN110874354A (zh) * 2019-10-23 2020-03-10 支付宝(杭州)信息技术有限公司 数据库迁移方法及装置、电子设备、存储介质
CN112363994A (zh) * 2020-10-27 2021-02-12 杭州大搜车汽车服务有限公司 数据库的处理方法、装置、电子装置和存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101169740B (zh) * 2007-08-07 2010-09-08 北京大学 一种ejb构件的动态迁移方法
CN102810092B (zh) * 2011-05-31 2017-07-07 腾讯科技(深圳)有限公司 数据读写方法及系统
CN102244882B (zh) * 2011-08-15 2013-10-16 南通大学 基于移动代理的无线传感器网络智能数据采集方法
CN102402596B (zh) * 2011-11-07 2016-01-20 北京搜狗科技发展有限公司 一种主从分离数据库的读写方法和系统
CN103167052B (zh) * 2011-12-16 2015-08-19 北京思博途信息技术有限公司 一种自动优化ip地域信息库的方法及系统
CN103530290B (zh) * 2012-07-03 2017-12-12 深圳市腾讯计算机系统有限公司 数据库间的数据迁移方法和系统
US8799602B2 (en) * 2012-08-22 2014-08-05 International Business Machines Corporation Automated migration to a new target volume via merged bitmaps to maintain consistency
CN102982085B (zh) * 2012-10-31 2017-05-31 北京奇虎科技有限公司 数据迁移系统和方法
CN104424283A (zh) * 2013-08-30 2015-03-18 阿里巴巴集团控股有限公司 一种数据迁移的系统和数据迁移的方法
CN104462119B (zh) * 2013-09-18 2019-11-05 腾讯科技(深圳)有限公司 数据迁移方法及装置
CN103581331B (zh) * 2013-11-13 2018-04-03 中国科学院计算技术研究所 虚拟机在线迁移方法与系统
CN104598540A (zh) * 2014-12-31 2015-05-06 国家电网公司 定时数据迁移装置及其使用方法
CN104834739B (zh) * 2015-05-20 2017-11-17 成都布林特信息技术有限公司 互联网信息存储系统

Also Published As

Publication number Publication date
CN106682021A (zh) 2017-05-17

Similar Documents

Publication Publication Date Title
CN106682021B (zh) 数据库迁移方法及装置
US11513926B2 (en) Systems and methods for instantiation of virtual machines from backups
US20190146886A1 (en) Database system recovery using preliminary and final slave node replay positions
JP6921107B2 (ja) サービス処理方法、デバイス、及びシステム
JP2016541056A5 (zh)
US8335766B2 (en) Flash-copying within asynchronous mirroring environment
WO2016091069A1 (zh) 一种数据操作方法及装置
US20120254114A1 (en) Method and system for replicating data
WO2017101642A1 (zh) 分布式系统的数据节点升级方法及装置
CN104598459A (zh) 数据库处理、数据访问方法及系统
CN105824846B (zh) 数据迁移方法及装置
CN106155839B (zh) 一种用于备份数据的方法与设备
CN110442648B (zh) 数据同步方法和装置
WO2018006723A1 (zh) 一种针对数据库的数据修改请求处理方法及装置
US9207966B2 (en) Method and system for providing a high-availability application
WO2015085901A1 (zh) 一种文件传输方法、设备以及相关系统
US11144574B2 (en) System and method for managing database
US9924002B1 (en) Managing stateless processes
CN107741965B (zh) 数据库同步处理方法、装置、计算设备及计算机存储介质
CN106776775B (zh) 并发主从同步方法及装置
US11132351B2 (en) Executing transactions based on success or failure of the transactions
WO2015181616A1 (en) System and method for the production of job level pre-processed backup of critical data and/or datasets in a mainframe computing environment
WO2022041672A1 (zh) 分布式数据库系统的全量备份方法、装置及计算机可读存储介质
CN114816682A (zh) 分布式事务处理方法、系统及装置
CN113626263A (zh) Scst存储系统中保持数据一致性的方法及应用

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant