CN108897895A - 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法 - Google Patents

基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法 Download PDF

Info

Publication number
CN108897895A
CN108897895A CN201810763267.4A CN201810763267A CN108897895A CN 108897895 A CN108897895 A CN 108897895A CN 201810763267 A CN201810763267 A CN 201810763267A CN 108897895 A CN108897895 A CN 108897895A
Authority
CN
China
Prior art keywords
mysql
module
filename
band
database
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
Application number
CN201810763267.4A
Other languages
English (en)
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.)
Inspur Software Group Co Ltd
Original Assignee
Inspur Software Group 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 Inspur Software Group Co Ltd filed Critical Inspur Software Group Co Ltd
Priority to CN201810763267.4A priority Critical patent/CN108897895A/zh
Publication of CN108897895A publication Critical patent/CN108897895A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法,属于跨网闸数据同步技术领域。本发明的基于云消息服务平台实现跨网闸Mysql数据库同步的装置包括Mysql日志采集模块、消息队列一、转换模块一、文件名带编码的文件存储模块一、网闸模块、消息队列二、转换模块二、文件名带编码的文件存储模块二和Mysql数据入库模块,消息队列一与Mysql日志采集模块、转换模块一分别连接。该发明的基于云消息服务平台实现跨网闸Mysql数据库同步的装置解决了Mysql数据库跨网闸的同步问题,保证Mysql数据库的及时性和高效性,具有很好的推广应用价值。

Description

基于云消息服务平台实现跨网闸Mysql数据库同步的装置及 方法
技术领域
本发明涉及跨网闸数据同步技术领域,具体提供一种基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法。
背景技术
在政府或企业环境中,经常出于安全需要,内网和外网需要“物理隔离”,但是内网和外网还需要交换数据(如Mysql数据库同步),就引入了网闸。网闸全称为安全隔离网闸,网闸的隔离定义上有三个层级:
物理隔离:模拟人工交换的过程,必须在内外网的节点机上进行数据交换,不能实现网络上任意计算机的数据交换,这种方式安全性很高。
网络隔离:在简单交换的基础上,对文件传输协议的数据打包交换,实现了网络上任意信息点的数据交换,安全性降低。
协议隔离:对其他应用协议代理,如Http,实现了应用数据的直接交换,方便交换的同时大大降低了安全性。
物理隔离是指只有文件级交换的网闸,在这种情况下,内网用户如需通过访问外网的Mysql数据库,协议上是不通的,也就是说不能直接访问外网的Mysql数据库。于是产生了一种新的需求,在保障安全的情况下,把外网的Mysql数据库通过网闸物理隔离方式同步到内网的Mysql数据库,这样内网用户直接访问内网的Mysql数据库就相当于可以访问外网的Mysql数据库了。外网的Mysql数据库其数据文件是在不断变化的,直接同步大量体量大的文件是不现实的,网闸一般也不支持大文件的交换。
云消息服务平台(简称CMSP)是一种消息中间件,它可以利用TCP/IP协议将位于一个网络消息队列中的消息实时有序地传输到另一个网络消息队列,提供了不同网络实时高效交换数据的方法。CMSP有一个重要的特性,严格的先进先出,即消息的生产、存储、传输和消费等各个环节都是严格有序的。在有网闸隔离的内网环境中,在保证隔离安全(只允许文件交换,不允许协议通过等)的情况下,CMSP无法正常传输数据,如简单地将消息从消息队列取出生成文件并通过网闸进行交换则破坏了消息的有序性,CMSP就失去了一些要求严格有序的应用场景,如Mysql数据库同步。
发明内容
本发明的技术任务是针对上述存在的问题,提供一种能够解决Mysql数据库跨网闸同步问题,同时保证Mysql数据库的及时性和高效性的基于云消息服务平台实现跨网闸Mysql数据库同步的装置。
本发明进一步的技术任务是提供一种基于云消息服务平台实现跨网闸Mysql数据库同步的方法。
为实现上述目的,本发明提供了如下技术方案:
基于云消息服务平台实现跨网闸Mysql数据库同步的装置,包括Mysql日志采集模块、消息队列一、转换模块一、文件名带编码的文件存储模块一、网闸模块、消息队列二、转换模块二、文件名带编码的文件存储模块二和Mysql数据入库模块,Mysql日志采集模块、消息队列一、转换模块一、文件名带编码的文件存储模块一设于外网中,消息队列二、转换模块二、文件名带编码的文件存储模块二和Mysql数据入库模块设于内网中,消息队列一与Mysql日志采集模块、转换模块一分别连接,转换模块一与文件名带编码的文件存储模块一相连接,文件名带编码的文件存储模块一通过网闸模块与文件名带编码的文件存储模块二相连接,文件名带编码的文件存储模块二与转换模块二相连接,消息队列二与转换模块二、Mysql数据入库模块分别连接。
作为优选,该基于云消息服务平台实现跨网闸Mysql数据库同步的装置还包括Mysql源数据库和Mysql目的数据库,Mysql源数据库与Mysql日志采集模块相连接,Mysql目的数据库与Mysql数据入库模块相连接。
作为优选,所述Mysql日志采集模块用于从Mysql源数据库采集全量数据和增量变化日志,Mysql数据入库模块将全量数据写入Mysql目的数据库中,Mysql日志采集模块将增量变化日志拆分成64KB的消息块,把增量变化日志同步到Mysql目的数据库中。
作为优选,Mysql日志采集模块将全量数据和增量变化日志写入到消息队列一中,转换模块一从消息队列一中有序读出消息并生成文件名带编码的文件存储于文件名带编码的文件存储模块一中,网闸模块将文件名带编码的文件存储模块一中的文件名带编码的文件交换至文件名带编码的文件存储模块二中。
作为优选,所述转换模块二将文件名带编码的文件存储模块二中的文件名带编码的文件写入消息队列二中。
基于云消息服务平台实现跨网闸Mysql数据库同步的方法,Mysql日志采集模块从Mysql源数据库中采集Mysql全量数据和增量变化日志,并将全量数据和增量变化日志写入到消息队列一中,再通过网闸模块写入到消息队列二中,Mysql数据入库模块从消息队列二中获取全量数据和增量变化日志并写入到Mysql目的数据库中。
全量数据采集是从选定的某些表中通过Mysql数据库接口获得全部记录,增量变化日志采集是获取Mysql源数据binlog日志。
作为优选,Mysql日志采集模块用于从Mysql源数据库采集全量数据和增量变化日志,Mysql数据入库模块将全量数据写入Mysql目的数据库中,Mysql日志采集模块将增量变化日志拆分成64KB的消息块,把增量变化日志同步到Mysql目的数据库中。这样Mysql目的数据库与Mysql源数据库保持实时同步,Mysql源数据库的内容变化(包含增加和删除)都会及时同步到Mysql目的数据库中。
其中,不足64KB的取剩余值。
作为优选,全量数据和增量变化日志写入到消息队列一中,通过转换模块一,有序的读出消息并生成文件名带编码的文件存储在文件名带编码的文件存储模块一中,网闸模块通过文件交换功能将文件名带编码的文件交换到文件名带编码的文件存储模块二中,转换模块二有序地将文件名带编码的文件读出,并写入到消息队列二中。
转换模块一生成的文件名带编码的文件既要保证文件生成的实时性,同时要兼顾文件名带编码的文件的大小,确保文件名带编码的文件尽可能被网闸模块高效准时地交换到转换模块二。网闸模块的文件交换是无序的,转换模块二的一个关键点是负责有序地将文件名带编码的文件内容读出并以消息地形式写入消息队列二中。
作为优选,转换模块一有序地从消息队列一中读出消息,以同样的顺序排序写入文件名带编码的文件存储模块一中,文件名带编码的文件的文件名具有消息的起始序号和终止序号。
本发明中,文件名样例为cmspXXXXXX_YYYYYY.msg,其中,XXXXXX为起始序号,YYYYYY为终止序号。
转换模块二第一次运行时开始读出的消息序号是需要配置的,以后每次读出文件都要从上一次终止序号的下一个开始读起,如网闸模块未将满足条件的文件交换过来,则转换模块二一直等待直到条件满足。
作为优选,转换模块二有序地将文件名带编码的文件内容读出,并以消息的形式写入消息队列二中。
与现有技术相比,本发明的基于云消息服务平台实现跨网闸Mysql数据库同步的方法具有以下突出的有益效果:所述基于云消息服务平台实现跨网闸Mysql数据库同步的方法,既解决了Mysql数据库跨网闸同步问题,又保证了Mysql数据库同步的及时性和高效性,具有良好的推广应用价值。
附图说明
图1是本发明所述基于云消息服务平台实现跨网闸Mysql数据库同步的装置的拓扑图。
具体实施方式
下面将结合附图和实施例,对本发明的基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法作进一步详细说明。
实施例
如图1所示,本发明的基于云消息服务平台实现跨网闸Mysql数据库同步的装置,包括Mysql源数据库、Mysql日志采集模块、消息队列一、转换模块一、文件名带编码的文件存储模块一、网闸模块、消息队列二、转换模块二、文件名带编码的文件存储模块二、Mysql数据入库模块和Mysql目的数据库。Mysql源数据库、Mysql日志采集模块、消息队列一、转换模块一、文件名带编码的文件存储模块一设于外网中,消息队列二、转换模块二、文件名带编码的文件存储模块二、Mysql数据入库模块和Mysql目的数据库设于内网中。
Mysql源数据库与Mysql日志采集模块相连接。消息队列一与Mysql日志采集模块、转换模块一分别连接,转换模块一与文件名带编码的文件存储模块一相连接。文件名带编码的文件存储模块一通过网闸模块与文件名带编码的文件存储模块二相连接,文件名带编码的文件存储模块二与转换模块二相连接,消息队列二与转换模块二、Mysql数据入库模块分别连接,Mysql目的数据库与Mysql数据入库模块相连接。
Mysql日志采集模块用于从Mysql源数据库采集全量数据和增量变化日志。全量数据采集是从选定的某些表中通过Mysql数据库接口获得全部记录,增量变化日志采集是获取Mysql源数据binlog日志。Mysql数据入库模块将增量变化日志拆分成64KB的消息块,不足64K的取剩余值。Mysql数据入库模块将全量数据、增量变化日志写入到消息队列一种。转换模块一从消息队列一中有序读出消息并生成文件名带编码的文件存储于文件名带编码的文件存储模块一中,网闸模块将文件名带编码的文件存储模块一中的文件名带编码的文件交换至文件名带编码的文件存储模块二中。转换模块二将文件名带编码的文件存储模块二中的文件名带编码的文件写入消息队列二中。消息队列二中的文件通过Mysql入库模块最终写入到Mysql目的数据库中。
转换模块一生成的文件名带编码的文件既要保证文件生成的实时性,同时要兼顾文件名带编码的文件的大小,确保文件名带编码的文件尽可能被网闸模块高效准时地交换到转换模块二。网闸模块的文件交换是无序的,转换模块二的一个关键点是负责有序地将文件名带编码的文件内容读出并以消息地形式写入消息队列二中。
本发明的基于云消息服务平台实现跨网闸Mysql数据库同步的方法,Mysql日志采集模块从Mysql源数据库中采集Mysql全量数据和增量变化日志,并将全量数据和增量变化日志写入到消息队列一中。通过转换模块一有序地从消息队列一中读出消息并生成文件名带编码的文件,以同样的顺序排序写入文件名带编码的文件存储模块一中,文件名带编码的文件的文件名具有消息的起始序号和终止序号。例如,本发明中,文件名样例为cmspXXXXXX_YYYYYY.msg,XXXXXX为起始序号,YYYYYY为终止序号。转换模块一生成的文件名带编码的文件既要保证文件生成的实时性,同时要兼顾文件名带编码的文件的大小,确保文件名带编码的文件尽可能被网闸模块高效准时地交换到转换模块二。网闸模块通过文件交换功能将文件名带编码的文件交换到文件名带编码的文件存储模块二中,网闸模块的文件交换是无序的,转换模块二的一个关键点是有序地将文件名带编码的文件读出,并以消息的形式写入到消息队列二中。Mysql数据入库模块从消息队列二中获取全量数据和增量变化日志并写入到Mysql目的数据库中。
以上所述的实施例,只是本发明较优选的具体实施方式,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

Claims (10)

1.基于云消息服务平台实现跨网闸Mysql数据库同步的装置,其特征在于:包括Mysql日志采集模块、消息队列一、转换模块一、文件名带编码的文件存储模块一、网闸模块、消息队列二、转换模块二、文件名带编码的文件存储模块二和Mysql数据入库模块,Mysql日志采集模块、消息队列一、转换模块一、文件名带编码的文件存储模块一设于外网中,消息队列二、转换模块二、文件名带编码的文件存储模块二和Mysql数据入库模块设于内网中,消息队列一与Mysql日志采集模块、转换模块一分别连接,转换模块一与文件名带编码的文件存储模块一相连接,文件名带编码的文件存储模块一通过网闸模块与文件名带编码的文件存储模块二相连接,文件名带编码的文件存储模块二与转换模块二相连接,消息队列二与转换模块二、Mysql数据入库模块分别连接。
2.根据权利要求1所述的基于云消息服务平台实现跨网闸Mysql数据库同步的装置,其特征在于:还包括Mysql源数据库和Mysql目的数据库,Mysql源数据库与Mysql日志采集模块相连接,Mysql目的数据库与Mysql数据入库模块相连接。
3.根据权利要求2所述的基于云消息服务平台实现跨网闸Mysql数据库同步的装置,其特征在于:所述Mysql日志采集模块用于从Mysql源数据库采集全量数据和增量变化日志,Mysql数据入库模块将全量数据写入Mysql目的数据库中,Mysql日志采集模块将增量变化日志拆分成64KB的消息块,把增量变化日志同步到Mysql目的数据库中。
4.根据权利要求3所述的基于云消息服务平台实现跨网闸Mysql数据库同步的装置,其特征在于:Mysql日志采集模块将全量数据和增量变化日志写入到消息队列一中,转换模块一从消息队列一中有序读出消息并生成文件名带编码的文件存储于文件名带编码的文件存储模块一中,网闸模块将文件名带编码的文件存储模块一中的文件名带编码的文件交换至文件名带编码的文件存储模块二中。
5.根据权利要求4所述的基于云消息服务平台实现跨网闸Mysql数据库同步的装置,其特征在于:所述转换模块二将文件名带编码的文件存储模块二中的文件名带编码的文件写入消息队列二中。
6.基于云消息服务平台实现跨网闸Mysql数据库同步的方法,其特征在于:Mysql日志采集模块从Mysql源数据库中采集Mysql全量数据和增量变化日志,并将全量数据和增量变化日志写入到消息队列一中,再通过网闸模块写入到消息队列二中,Mysql数据入库模块从消息队列二中获取全量数据和增量变化日志并写入到Mysql目的数据库中。
7.根据权利要求6所述的基于云消息服务平台实现跨网闸Mysql数据库同步的方法,其特征在于:Mysql日志采集模块用于从Mysql源数据库采集全量数据和增量变化日志,Mysql数据入库模块将全量数据写入Mysql目的数据库中,Mysql日志采集模块将增量变化日志拆分成64KB的消息块,把增量变化日志同步到Mysql目的数据库中。
8.根据权利要求6或7所述的基于云消息服务平台实现跨网闸Mysql数据库同步的方法,其特征在于:全量数据和增量变化日志写入到消息队列一中,通过转换模块一,有序的读出消息并生成文件名带编码的文件存储在文件名带编码的文件存储模块一中,网闸模块通过文件交换功能将文件名带编码的文件交换到文件名带编码的文件存储模块二中,转换模块二有序地将文件名带编码的文件读出,并写入到消息队列二中。
9.根据权利要求8所述的基于云消息服务平台实现跨网闸Mysql数据库同步的方法,其特征在于:转换模块一有序地从消息队列一中读出消息,以同样的顺序排序写入文件名带编码的文件存储模块一中,其中,文件名带编码的文件的文件名具有消息的起始序号和终止序号。
10.根据权利要求9所述的基于云消息服务平台实现跨网闸Mysql数据库同步的方法,其特征在于:转换模块二有序地将文件名带编码的文件内容读出,并以消息的形式写入消息队列二中。
CN201810763267.4A 2018-07-12 2018-07-12 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法 Pending CN108897895A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810763267.4A CN108897895A (zh) 2018-07-12 2018-07-12 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810763267.4A CN108897895A (zh) 2018-07-12 2018-07-12 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法

Publications (1)

Publication Number Publication Date
CN108897895A true CN108897895A (zh) 2018-11-27

Family

ID=64349495

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810763267.4A Pending CN108897895A (zh) 2018-07-12 2018-07-12 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法

Country Status (1)

Country Link
CN (1) CN108897895A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710584A (zh) * 2018-12-20 2019-05-03 浪潮软件集团有限公司 一种利用云消息服务平台实现文件双向同步的方法及装置
CN109739931A (zh) * 2018-12-21 2019-05-10 浪潮软件股份有限公司 一种基于CMSP的MySQLBinlog日志解析的增量同步方法
CN109981580A (zh) * 2019-02-25 2019-07-05 浪潮软件集团有限公司 一种防止cmsp被动态跟踪的安全方法和系统
CN110377666A (zh) * 2019-07-26 2019-10-25 浪潮软件股份有限公司 基于cmsp消息中间件进行异源数据库间数据同步的方法
CN110784532A (zh) * 2019-10-25 2020-02-11 北京天润融通科技股份有限公司 双向数据同步方法及系统
CN111770145A (zh) * 2020-06-17 2020-10-13 浙江申跃信息科技有限公司 一种基于日志解析的单向网络双边数据同步系统及方法
CN112000741A (zh) * 2020-08-25 2020-11-27 中国南方电网有限责任公司 内外网数据交换系统、方法、装置、计算机设备和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6460169B1 (en) * 1999-10-21 2002-10-01 International Business Machines Corporation Routing program method for positioning unit pins in a hierarchically designed VLSI chip
CN102843352A (zh) * 2012-05-15 2012-12-26 广东电网公司茂名供电局 在内网和外网之间跨物理隔离透明传输数据的系统和方法
CN203057193U (zh) * 2012-12-25 2013-07-10 山东中创软件工程股份有限公司 一种数据处理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6460169B1 (en) * 1999-10-21 2002-10-01 International Business Machines Corporation Routing program method for positioning unit pins in a hierarchically designed VLSI chip
CN102843352A (zh) * 2012-05-15 2012-12-26 广东电网公司茂名供电局 在内网和外网之间跨物理隔离透明传输数据的系统和方法
CN203057193U (zh) * 2012-12-25 2013-07-10 山东中创软件工程股份有限公司 一种数据处理装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
梁昌明,周伟伟,殷小科,龚艳: "浅谈跨内外网交换平台海量卡口数据实时同步交换方法", 《计算机光盘软件与应用》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710584A (zh) * 2018-12-20 2019-05-03 浪潮软件集团有限公司 一种利用云消息服务平台实现文件双向同步的方法及装置
CN109739931A (zh) * 2018-12-21 2019-05-10 浪潮软件股份有限公司 一种基于CMSP的MySQLBinlog日志解析的增量同步方法
CN109739931B (zh) * 2018-12-21 2023-03-24 浪潮软件股份有限公司 一种基于CMSP的MySQLBinlog日志解析的增量同步方法
CN109981580A (zh) * 2019-02-25 2019-07-05 浪潮软件集团有限公司 一种防止cmsp被动态跟踪的安全方法和系统
CN110377666A (zh) * 2019-07-26 2019-10-25 浪潮软件股份有限公司 基于cmsp消息中间件进行异源数据库间数据同步的方法
CN110784532A (zh) * 2019-10-25 2020-02-11 北京天润融通科技股份有限公司 双向数据同步方法及系统
CN111770145A (zh) * 2020-06-17 2020-10-13 浙江申跃信息科技有限公司 一种基于日志解析的单向网络双边数据同步系统及方法
CN112000741A (zh) * 2020-08-25 2020-11-27 中国南方电网有限责任公司 内外网数据交换系统、方法、装置、计算机设备和介质
CN112000741B (zh) * 2020-08-25 2024-05-03 中国南方电网有限责任公司 内外网数据交换系统、方法、装置、计算机设备和介质

Similar Documents

Publication Publication Date Title
CN108897895A (zh) 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法
CN109325072A (zh) 一种基于CMSP实现跨网闸Oracle数据库同步的方法及装置
CN113821564B (zh) 异构并行区块链及其链上数据与链下合约协同方法
CN109478055A (zh) 在通用、智能系统中使用智能节点用于监测工业过程
CN101807207A (zh) 一种基于内容差异比较的文档共享方法
CN104394211A (zh) 一种基于Hadoop用户行为分析系统设计与实现方法
CN105975502A (zh) 一种基于cdc方式实现增量抽取数据的方法
CN107870996A (zh) 基于区块链的电力交易管控方法及装置
CN111127017A (zh) 基于p2p存储网络和多层架构的区块链全分片方法及装置
CN107276992A (zh) 一种多数据源接入的方法及系统
CN111818098B (zh) 一种报文编辑方法、装置及计算机可读存储介质
CN103593384A (zh) 以目的地分析和数据去重实现数据传输优化的方法和系统
CN114666212B (zh) 配置数据下发方法
CN113656824A (zh) 基于区块链和ipfs技术的物联网智能终端信息安全交互方法
CN103488697B (zh) 能自动收集和交换碎片化商业信息的系统及移动终端
CN112800065A (zh) 基于改进区块存储结构的高效数据检索方法
CN101997643B (zh) 一种电子文件封装的方法及系统
CN106777387A (zh) 一种基于HBase的物联网大数据存取方法
CN109413131A (zh) 一种日志解析的方法及装置
CN101364924A (zh) 一种基于企业服务总线的数据采集自适应体系结构
CN105007310A (zh) 信息同步方法、装置和系统
CN112905571B (zh) 一种列车轨道交通传感器数据管理方法及装置
CN113886890A (zh) 一种数字化资源共建共享方法及装置
CN105468712A (zh) 一种数据存储兼容方法
CN103516765A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20181127