CN113051247A - 一种基于日志同步的数据库迁移方法及系统 - Google Patents
一种基于日志同步的数据库迁移方法及系统 Download PDFInfo
- Publication number
- CN113051247A CN113051247A CN202110289052.5A CN202110289052A CN113051247A CN 113051247 A CN113051247 A CN 113051247A CN 202110289052 A CN202110289052 A CN 202110289052A CN 113051247 A CN113051247 A CN 113051247A
- Authority
- CN
- China
- Prior art keywords
- database
- synchronization
- data
- incremental data
- target
- 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.)
- Pending
Links
- 238000013508 migration Methods 0.000 title claims abstract description 47
- 230000005012 migration Effects 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000004519 manufacturing process Methods 0.000 claims abstract description 23
- 230000001360 synchronised effect Effects 0.000 claims abstract description 12
- 230000008676 import Effects 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000000116 mitigating effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供的一种基于日志同步的数据库迁移方法及系统,利用生产数据库的备库,以基量数据库复制同步方式,复制到目标数据库,避免影响生产系统;复制基量数据库的同时,对备库最后同步的生产数据库增量数据进行缓存;基量数据库完成复制后,增量redo同步追平到目标数据库,数据追平的时间,可依据实际的增量数据量而定,不受时间限制;数据追平后,确保迁移库继续与生产数据库数据同步;验证新库运行是否正常,数据是否正确,可运行一段时间无误后,确定时间点,切换到新库,无缝完成数据库的迁移,简化了数据库迁移过程,规避数据库迁移的风险,减少数据库停机时间。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种基于日志同步的数据库迁移方法及系统。
背景技术
数据库的迁移是一个相对复杂的系统化工程。数据库迁移,源端和目标端硬件可能存在差异,跨域以及跨数据库,需要在不同的操作系统之间迁移,特别是对于数据库包含在很多企业的生产系统中,具备海量数据,又必须支持7*24小时对外提供服务,要求尽可能最小停机时间完成迁移;在迁移中,会涉及数据库领域的所有知识,包括管理、备份恢复、容灾、监控等,这个过程中,还包括主机的一些存储、配置,整个流程的东西都需要考虑,迁移的风险无处不在,数据库迁移,工程浩大,耗时费力的准备,能否顺利完成迁移,存在非常大的不确定性;确实发生风险时,是否能顺利回滚,也是重大的考验。
因此,需要一种基于日志同步的数据库迁移方法及系统,能够解决跨操作系统,跨域平台,海量数据,最小停机时间要求的数据库迁移且安全风险低。
发明内容
(一)要解决的技术问题
为了解决现有技术的上述问题,本发明提供一种基于日志同步的数据库迁移方法及系统,能够解决跨操作系统,跨域平台,海量数据,最小停机时间要求的数据库迁移且安全风险低。
(二)技术方案
为了达到上述目的,本发明采用的一种技术方案为:
一种基于日志同步的数据库迁移方法,包括步骤:
S1、利用生产数据库的备库将基量数据库复制迁移到目标库;
S2、记录所述备库最后同步的时间点,在生产数据库上获取该时间点后增量数据数据库事务日志,并解析获取DML和DDL的增量数据SQL;
S3、在目标数据库执行redo SQL实现增量数据的同步。
为了达到上述目的,本发明采用的另一种技术方案为:
一种基于日志同步的数据库迁移系统,包括基量导入模块、事务日志获取模块和增量数据同步模块;
所述基量导入模块利用生产数据库的备库将基量数据库复制迁移到目标库;
所述事务日志获取模块记录所述备库最后同步的时间点,在生产数据库上获取该时间点后增量数据数据库事务日志,并解析获取DML和DDL的增量数据SQL;
所述增量数据同步模块在目标数据库执行redo SQL实现增量数据的同步。
(三)有益效果
本发明的有益效果在于:利用生产数据库的备库,以基量数据库复制同步方式,复制到目标数据库,避免影响生产系统;复制基量数据库的同时,对备库最后同步的生产数据库增量数据进行缓存;基量数据库完成复制后,增量redo同步追平到目标数据库,数据追平的时间,可依据实际的增量数据量而定,不受时间限制;数据追平后,确保迁移库继续与生产数据库数据同步;验证新库运行是否正常,数据是否正确,可运行一段时间无误后,确定时间点,切换到新库,无缝完成数据库的迁移,简化了数据库迁移过程,规避数据库迁移的风险,减少数据库停机时间。
附图说明
图1为本发明实施例的基于日志同步的数据库迁移方法流程图。
具体实施方式
为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。
实施例一
请参照图1,一种基于日志同步的数据库迁移方法,其特征在于,包括步骤:
S1、利用生产数据库的备库将基量数据库复制迁移到目标库;
步骤S1具体为:
利用数据库的备库先将基量数据库导出为SQL文件,再重新导入到目标数据。
需考虑的是,不同数据库不同版本之间可能存在SQL的差异,甚至可能存在函数,字段类型,存贮过程等各种不兼容,需要完成数据库之间的兼容性处理,对于部分支持或不支持的功能,需使用替代方法或缓解方式,在迁移中避免影响应用的使用。
S2、记录所述备库最后同步的时间点,在生产数据库上获取该时间点后增量数据数据库事务日志,并解析获取DML和DDL的增量数据SQL,解析后可支持采用压缩并发传送到增量数据同步模块;
S3、在目标数据库执行redo SQL实现增量数据的同步。
步骤S3还包括:
当目标数据库执行增量数据同步时,可设置暂停同步,增量数据缓存在指定目录下,完成基量数据导入后,续传开启,完成数据同步,实现数据的同步追平操作。
目标库并行运行一段时间,完成业务系统功能验证,数据完整性校验,设定时间点,业务系统快速切换到目标数据库运行,完成迁移。
利用迁移目标数据库并行运行方法,几乎对生产业务系统无任何影响,最大程度减少数据库迁移带来的系统风险,可避免一次数据库迁移失败,导致多次的重复迁移实施工作,经济效益明显,另外,对于7*24小时业务生产系统,该方法的数据迁移,理论上可支撑达到尽可能最小的停机时间,缩短服务停止时间。
实施例二
一种基于日志同步的数据库迁移系统,包括基量导入模块、事务日志获取模块和增量数据同步模块;
所述基量导入模块利用生产数据库的备库将基量数据库复制迁移到目标库;
所述的所述基量导入模块利用生产数据库的备库将基量数据库复制迁移到目标库具体为:
所述基量导入模块利用数据库的备库先将基量数据库导出为SQL文件,再重新导入到目标数据。
需考虑的是,不同数据库不同版本之间可能存在SQL的差异,甚至可能存在函数,字段类型,存贮过程等各种不兼容,需要完成数据库之间的兼容性处理,对于部分支持或不支持的功能,需使用替代方法或缓解方式,在迁移中避免影响应用的使用。
所述事务日志获取模块记录所述备库最后同步的时间点,在生产数据库上获取该时间点后增量数据数据库事务日志,并解析获取DML和DDL的增量数据SQL,解析后可支持采用压缩并发传送到增量数据同步模块;
所述增量数据同步模块在目标数据库执行redo SQL实现增量数据的同步。
还包括:
当目标数据库执行增量数据同步时,所述增量数据同步模块可设置暂停同步,增量数据缓存在指定目录下,完成基量数据导入后,续传开启,完成数据同步,实现数据的同步追平操作。
目标库并行运行一段时间,完成业务系统功能验证,数据完整性校验,设定时间点,业务系统快速切换到目标数据库运行,完成迁移。
利用迁移目标数据库并行运行方法,几乎对生产业务系统无任何影响,最大程度减少数据库迁移带来的系统风险,可避免一次数据库迁移失败,导致多次的重复迁移实施工作,经济效益明显,另外,对于7*24小时业务生产系统,该方法的数据迁移,理论上可支撑达到尽可能最小的停机时间,缩短服务停止时间。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (6)
1.一种基于日志同步的数据库迁移方法,其特征在于,包括步骤:
S1、利用生产数据库的备库将基量数据库复制迁移到目标库;
S2、记录所述备库最后同步的时间点,在生产数据库上获取该时间点后增量数据数据库事务日志,并解析获取DML和DDL的增量数据SQL;
S3、在目标数据库执行redo SQL实现增量数据的同步。
2.根据权利要求1所述的基于日志同步的数据库迁移方法,其特征在于,步骤S1具体为:
利用数据库的备库先将基量数据库导出为SQL文件,再重新导入到目标数据。
3.根据权利要求1所述的基于日志同步的数据库迁移方法,其特征在于,步骤S3还包括:
当目标数据库执行增量数据同步时,可设置暂停同步,增量数据缓存在指定目录下,完成基量数据导入后,续传开启,完成数据同步。
4.一种基于日志同步的数据库迁移系统,其特征在于,包括基量导入模块、事务日志获取模块和增量数据同步模块;
所述基量导入模块利用生产数据库的备库将基量数据库复制迁移到目标库;
所述事务日志获取模块记录所述备库最后同步的时间点,在生产数据库上获取该时间点后增量数据数据库事务日志,并解析获取DML和DDL的增量数据SQL;
所述增量数据同步模块在目标数据库执行redo SQL实现增量数据的同步。
5.根据权利要求4所述的基于日志同步的数据库迁移系统,其特征在于,所述的所述基量导入模块利用生产数据库的备库将基量数据库复制迁移到目标库具体为:
所述基量导入模块利用数据库的备库先将基量数据库导出为SQL文件,再重新导入到目标数据。
6.根据权利要求4所述的基于日志同步的数据库迁移系统,其特征在于,还包括:
当目标数据库执行增量数据同步时,所述增量数据同步模块可设置暂停同步,增量数据缓存在指定目录下,完成基量数据导入后,续传开启,完成数据同步。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110289052.5A CN113051247A (zh) | 2021-03-18 | 2021-03-18 | 一种基于日志同步的数据库迁移方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110289052.5A CN113051247A (zh) | 2021-03-18 | 2021-03-18 | 一种基于日志同步的数据库迁移方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113051247A true CN113051247A (zh) | 2021-06-29 |
Family
ID=76513448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110289052.5A Pending CN113051247A (zh) | 2021-03-18 | 2021-03-18 | 一种基于日志同步的数据库迁移方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113051247A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117216159A (zh) * | 2023-08-22 | 2023-12-12 | 飞算数智科技(深圳)有限公司 | 数据同步方法、装置、存储介质及电子设备 |
CN118467644A (zh) * | 2024-07-15 | 2024-08-09 | 迪思杰(北京)数据管理技术有限公司 | SQL Server数据库事务日志分析DDL操作方法、装置、设备及介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573056A (zh) * | 2015-01-22 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种基于oracle数据库大数据量在线迁移的方法 |
CN105989006A (zh) * | 2015-01-27 | 2016-10-05 | 中芯国际集成电路制造(上海)有限公司 | 数据迁移方法和装置 |
CN106126753A (zh) * | 2016-08-23 | 2016-11-16 | 易联众信息技术股份有限公司 | 基于大数据的增量抽取的方法 |
CN106874389A (zh) * | 2017-01-11 | 2017-06-20 | 腾讯科技(深圳)有限公司 | 数据的迁移方法和装置 |
CN108132949A (zh) * | 2016-12-01 | 2018-06-08 | 腾讯科技(深圳)有限公司 | 数据库集群中数据迁移的方法及装置 |
CN108932282A (zh) * | 2018-05-18 | 2018-12-04 | 腾讯科技(深圳)有限公司 | 一种数据库迁移方法、装置和存储介质 |
CN109284293A (zh) * | 2018-10-08 | 2019-01-29 | 湖南工学院 | 用于水务公司营业收费系统升级的数据迁移方法 |
CN110647579A (zh) * | 2019-08-16 | 2020-01-03 | 北京百度网讯科技有限公司 | 数据同步方法及装置、计算机设备与可读介质 |
CN111026808A (zh) * | 2019-12-02 | 2020-04-17 | 上海浪擎信息科技有限公司 | 一种基于国产环境下的异构数据库同步系统及同步方法 |
CN111400276A (zh) * | 2020-03-03 | 2020-07-10 | 杭州天谷信息科技有限公司 | 实时同步数据库迁移装置及方法 |
CN111651428A (zh) * | 2020-05-22 | 2020-09-11 | 上海浪擎信息科技有限公司 | 一种基于国产数据库迁移环境下的双轨运行方法 |
CN111694800A (zh) * | 2020-04-30 | 2020-09-22 | 武汉达梦数据库有限公司 | 一种提升数据同步性能的方法和数据同步系统 |
CN111881116A (zh) * | 2020-08-05 | 2020-11-03 | 中国工商银行股份有限公司 | 数据迁移方法、数据迁移系统、计算机系统和存储介质 |
-
2021
- 2021-03-18 CN CN202110289052.5A patent/CN113051247A/zh active Pending
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104573056A (zh) * | 2015-01-22 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种基于oracle数据库大数据量在线迁移的方法 |
CN105989006A (zh) * | 2015-01-27 | 2016-10-05 | 中芯国际集成电路制造(上海)有限公司 | 数据迁移方法和装置 |
CN106126753A (zh) * | 2016-08-23 | 2016-11-16 | 易联众信息技术股份有限公司 | 基于大数据的增量抽取的方法 |
CN108132949A (zh) * | 2016-12-01 | 2018-06-08 | 腾讯科技(深圳)有限公司 | 数据库集群中数据迁移的方法及装置 |
US20190266134A1 (en) * | 2017-01-11 | 2019-08-29 | Tencent Technology (Shenzhen) Company Limited | Data migration method, apparatus, and storage medium |
CN106874389A (zh) * | 2017-01-11 | 2017-06-20 | 腾讯科技(深圳)有限公司 | 数据的迁移方法和装置 |
CN108932282A (zh) * | 2018-05-18 | 2018-12-04 | 腾讯科技(深圳)有限公司 | 一种数据库迁移方法、装置和存储介质 |
CN109284293A (zh) * | 2018-10-08 | 2019-01-29 | 湖南工学院 | 用于水务公司营业收费系统升级的数据迁移方法 |
CN110647579A (zh) * | 2019-08-16 | 2020-01-03 | 北京百度网讯科技有限公司 | 数据同步方法及装置、计算机设备与可读介质 |
CN111026808A (zh) * | 2019-12-02 | 2020-04-17 | 上海浪擎信息科技有限公司 | 一种基于国产环境下的异构数据库同步系统及同步方法 |
CN111400276A (zh) * | 2020-03-03 | 2020-07-10 | 杭州天谷信息科技有限公司 | 实时同步数据库迁移装置及方法 |
CN111694800A (zh) * | 2020-04-30 | 2020-09-22 | 武汉达梦数据库有限公司 | 一种提升数据同步性能的方法和数据同步系统 |
CN111651428A (zh) * | 2020-05-22 | 2020-09-11 | 上海浪擎信息科技有限公司 | 一种基于国产数据库迁移环境下的双轨运行方法 |
CN111881116A (zh) * | 2020-08-05 | 2020-11-03 | 中国工商银行股份有限公司 | 数据迁移方法、数据迁移系统、计算机系统和存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117216159A (zh) * | 2023-08-22 | 2023-12-12 | 飞算数智科技(深圳)有限公司 | 数据同步方法、装置、存储介质及电子设备 |
CN118467644A (zh) * | 2024-07-15 | 2024-08-09 | 迪思杰(北京)数据管理技术有限公司 | SQL Server数据库事务日志分析DDL操作方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8935205B2 (en) | System and method of performing snapshot isolation in distributed databases | |
US9244914B2 (en) | Schema versioning for cloud hosted databases | |
US20180081956A1 (en) | Method for automatically synchronizing multi-source heterogeneous data resources | |
WO2021184679A1 (zh) | 持续数据保护系统及方法 | |
CN110727548B (zh) | 一种基于数据库dml同步的持续数据保护方法及装置 | |
CN113051247A (zh) | 一种基于日志同步的数据库迁移方法及系统 | |
CN111651519B (zh) | 数据同步方法、数据同步装置、电子设备及存储介质 | |
US20220229822A1 (en) | Data processing method and device for distributed database, storage medium, and electronic device | |
CN110737720A (zh) | 一种db2数据库数据同步方法、装置、系统 | |
CN111367994A (zh) | 数据库增量数据同步备份方法及系统 | |
US20220156277A1 (en) | Data synchronization in a data analysis system | |
KR20080084332A (ko) | 데이터베이스 마이그레이션 장치 및 방법 | |
CN115292307A (zh) | 数据同步系统、方法及相应计算机设备和存储介质 | |
CN112966025B (zh) | 一种binlog日志挖掘字典实现方法 | |
CN101425078A (zh) | 一种软件源代码的更新方法及装置 | |
CN111309740B (zh) | 一种数据处理的方法、装置、设备及存储介质 | |
Zhou et al. | An ETL strategy for real-time data warehouse | |
CN109254960B (zh) | 一种数据库海量数据的迁移方法及装置 | |
WO2023111765A1 (en) | System and method for handling data consolidation from an edge device to a target database | |
CN115658391A (zh) | 基于QianBase MPP数据库的WAL机制的备份恢复方法 | |
CN111209138A (zh) | 数据存储系统的运维方法及装置 | |
CN112380186A (zh) | 一种基于主动适配的国产数据库迁移方法 | |
US10922301B1 (en) | Apparatus, computer program, and method for trigger-based tracking of database modifications | |
CN118170746A (zh) | 数据迁移方法、装置、电子设备及存储介质 | |
CN117290361B (zh) | 一种用于数据结构的自动化管理系统及方法 |
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 |