CN107423452A - 一种电网异构数据库同步复制迁移方法 - Google Patents
一种电网异构数据库同步复制迁移方法 Download PDFInfo
- Publication number
- CN107423452A CN107423452A CN201710781861.1A CN201710781861A CN107423452A CN 107423452 A CN107423452 A CN 107423452A CN 201710781861 A CN201710781861 A CN 201710781861A CN 107423452 A CN107423452 A CN 107423452A
- Authority
- CN
- China
- Prior art keywords
- data
- database
- destination end
- power network
- file
- 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
- 238000000034 method Methods 0.000 title claims abstract description 13
- 230000011218 segmentation Effects 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000004807 localization Effects 0.000 claims description 2
- 238000012546 transfer Methods 0.000 claims description 2
- 238000002407 reforming Methods 0.000 claims 1
- 230000001360 synchronised effect Effects 0.000 abstract description 6
- 238000013508 migration Methods 0.000 abstract description 5
- 230000005012 migration Effects 0.000 abstract description 5
- 238000007726 management method Methods 0.000 abstract description 3
- 238000013500 data storage Methods 0.000 abstract description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Public Health (AREA)
- Water Supply & Treatment (AREA)
- Computing Systems (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种电网异构数据库处理领域,特别是涉及一种基于MySQL日志解析的电网异构数据库同步复制迁移方式。针对电网数据规模大、数据量庞杂、数据存储分散等特点,且绝大多数产品主要是大数据库厂商针对自己公司的数据库产品开发出来的,不一定适用于其它数据库管理系统等问题。本发明通过分析MySQL日志,解析出变化的数据,并形成标准SQL语句,在目标端以JDBC方式连接并执行,来达到不需要人为操作,使服务器上的数据库能够全自动化进行数据的同步复制迁移。
Description
技术领域
本发明涉及一种电网异构数据库领域,特别是涉及一种基于MySQL日志解析的电网异构数据库同步复制迁移方式。
技术背景
目前各电力公司在用的数据库同步复制软件超过600套,年增量达到300套,年投资在1000万以上,全部采用国外产品且均独立建设,未进行统一的规划和管理。而以现有实现方案针对不同的数据库采用不同的同步复制软件,以源端数据库为MySQL为例,如果要备份到MySQL目标端,则可以采用MySQL自带的master-slave主从复制方案;如果要同步到oracle目标端,则需要部署另一个同步复制软件;如果是同步到postgreSQL目标端,则需要部署第三套同步复制软件。
本发明通过分析MySQL日志,解析出变化的数据,并形成标准SQL语句,在目标端以JDBC方式连接并执行,来达到不需要人为操作,使服务器上的数据库能够全自动化进行数据的同步复制。
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前最流行的关系型数据库管理系统之一,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写用于连接多种类型数据库的应用程序。
发明内容及附图
图1为基于MySQL日志解析的电网异构数据库同步复制迁移整体流程。
由于电网数据规模大、数据量庞杂、数据存储分散等特点,而且绝大多数产品主要是大数据库厂商针对自己公司的数据库产品开发出来的,不一定适用于其它数据库管理系统。因此需要一种异构数据库同步复制方法,在保证数据一致性和完整性的情况下,通过日志在线分析技术,可以使数据库不需要人为操作即可实现全自动化数据库内容复制迁移。
在本系统中日志主要分为程序执行过程日志以及分割/解析进度日志两种,在逻辑解析redo服务端还有SQL重做日志,其中记录在解析过程中执行失败的SQL语句。
程序执行过程LOG错误级别:
·Error:包括SQL_Error、APP_Error两种错误级别,分别表示SQL加载执行错误日志,对该错误还需要记录到SQL重做日志当中;APP_Error表示程序执行过程中发生的错误信息;
·Warning:记录SQL加载过程中的转换,例如目标端的更新语句发现数据不存在,改为插入操作;
·Info:程序执行过程日志;
·Debug:调试日志
分割/解析进度日志:
用于记录当前对逻辑日志的分割、解析进度,包括记录当前读取到的位置、文件名信息,对因不可抗力导致的程序重启回滚以及断点续传。
日志格式:OffSet+FileName
1.源端数据传输:数据源端逻辑分割程序,根据当前获取的逻辑文件分割整合,按固定大小,将数据发送到目标端数据分析程序,同时发送分割程序当前的解析状态或者目标端数据库状态发送至目标端。使用ActiveMQ作为消息总线和通信服务。
ActiveMQ通过开通不同的消息队列用来区分发送端消息的用途,消息队列包括:数据包队列(DATA_QUEUE)和性能状态数据包队列(STATE_QUEUE)。
消息格式(暂定):
DB_Name+IP+Type(消息类型:增量备份、文件复制)+No(编号)+TotalNumber(完整文件拆包数,增量备份忽略)+DATA
DB_Name+IP+Type(指令、状态)+DATA
在这里DB_Name+IP是为了唯一确定源端数据来源,为了在目标端做区分使用
2.目标端逻辑数据接收:主要接收来自不同源端数据库的逻辑日志数据,并按照指定缓存路径,写入到缓存文件当中;采用缓存的方式存储接收到的逻辑数据主要是为了减少网络压力,增加网络发送接收响应时间,减少目标端数据库阻塞对数据接收的影响,从根本是解决因为数据库数据同步入库造成的源端和目标端之间数据阻塞问题。
3.目标端数据解析:接收源端发送的数据包和状态包,并将数据包写入到本地文件当中,同时展示当前收到的状态数据,数据重做服务根据本地逻辑数据文件的DDL/DML数据以及目标端数据库类型,转换符合目标端数据库规范的可执行命令。从数据包接收队列接收的数据,直接写入本地逻辑数据文件,主要用于解决在目标端执行逻辑命令时,发生不可抗力导致程序中断,恢复重做的问题;逻辑日志解析匹配模块,针对目标端数据库类型,转换成本地化数据库可执行命令,通过JDBC访问数据库,将数据同步,执行不成功的SQL命令(以更改执行命令的SQL:如Insert to updata),将记录在重做SQL日志当中。
4.目标端逻辑数据加载:主要读取缓存下来的逻辑日志数据,根据目标数据库的类型,启动内部自有的适配模块,解析成通用标准SQL数据语句,并批量完成数据加载。
有益效果
本发明通过分析MySQL日志,解析出变化的数据,并形成标准SQL语句,在目标端以JDBC方式连接并执行,来达到不需要人为操作,使服务器上的数据库能够全自动化进行数据的同步复制。
本发明整合数据库处理软件,有效节约成本投入。使用本方法复制后的数据,通过JDBC方式统一进行迁移处理,可以达到将服务器上的数据库全部自动化处理的目的,无需人工操作,大幅提高工作效率。
Claims (3)
1.一种电网异构数据库同步复制迁移方法,其特征在于:程序执行过程LOG错误级别命名及含义:源端数据传输:数据源端逻辑分割程序,根据当前获取的逻辑文件分割整合,按固定大小,将数据发送到目标端数据分析程序,同时发送分割程序当前的解析状态或者目标端数据库状态发送至目标端。
2.根据权利要求1所述,一种电网异构数据库同步复制迁移方法,其特征在于:接收来自不同源端数据库的逻辑日志数据,并按照指定缓存路径,写入到缓存文件当中;采用缓存的方式存储接收到的逻辑数据主要是为了减少网络压力,增加网络发送接收响应时间,减少目标端数据库阻塞对数据接收的影响,从根本是解决因为数据库数据同步入库造成的源端和目标端之间数据阻塞问题。
3.根据权利要求2所述,一种电网异构数据库同步复制迁移方法,其特征在于:接收源端发送的数据包和状态包,并将数据包写入到本地文件当中,同时展示当前收到的状态数据,数据重做服务根据本地逻辑数据文件的DDL/DML数据以及目标端数据库类型,转换符合目标端数据库规范的可执行命令;从数据包接收队列接收的数据,直接写入本地逻辑数据文件,主要用于解决在目标端执行逻辑命令时,发生不可抗力导致程序中断,恢复重做的问题;逻辑日志解析匹配模块,针对目标端数据库类型,转换成本地化数据库可执行命令,通过JDBC访问数据库,将数据同步,执行不成功的SQL命令(以更改执行命令的SQL:如Insertto updata),将记录在重做SQL日志当中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710781861.1A CN107423452A (zh) | 2017-09-02 | 2017-09-02 | 一种电网异构数据库同步复制迁移方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710781861.1A CN107423452A (zh) | 2017-09-02 | 2017-09-02 | 一种电网异构数据库同步复制迁移方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107423452A true CN107423452A (zh) | 2017-12-01 |
Family
ID=60435608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710781861.1A Pending CN107423452A (zh) | 2017-09-02 | 2017-09-02 | 一种电网异构数据库同步复制迁移方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107423452A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446315A (zh) * | 2018-02-07 | 2018-08-24 | 中国平安人寿保险股份有限公司 | 大数据迁移方法、装置、设备及存储介质 |
CN109992595A (zh) * | 2019-04-11 | 2019-07-09 | 北京启迪区块链科技发展有限公司 | 异构数据库转换方法、装置、设备和存储介质 |
CN110569142A (zh) * | 2019-08-29 | 2019-12-13 | 天津大学 | 一种oracle数据增量同步系统及方法 |
CN110597891A (zh) * | 2018-06-12 | 2019-12-20 | 武汉斗鱼网络科技有限公司 | MySQL聚合为PostgreSQL数据库的设备、系统、方法、存储介质 |
WO2019242115A1 (zh) * | 2018-06-20 | 2019-12-26 | 平安科技(深圳)有限公司 | 一种数据同步系统及方法 |
CN112804331A (zh) * | 2021-01-14 | 2021-05-14 | 杭州海兴泽科信息技术有限公司 | 一种基于消息总线的电能表数据处理方法、系统和电能表 |
CN114003622A (zh) * | 2021-12-30 | 2022-02-01 | 天津南大通用数据技术股份有限公司 | 一种事务型数据库之间巨大事务增量同步方法 |
CN115563088A (zh) * | 2022-12-08 | 2023-01-03 | 广东睿江云计算股份有限公司 | 不同类型的数据库的数据迁移方法及迁移系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250514A (zh) * | 2016-08-04 | 2016-12-21 | 摩贝(上海)生物科技有限公司 | 基于Mysql数据库和SQL日志的跨国数据同步方法 |
CN106709043A (zh) * | 2016-12-30 | 2017-05-24 | 江苏瑞中数据股份有限公司 | 一种基于数据库日志的数据同步加载方法 |
-
2017
- 2017-09-02 CN CN201710781861.1A patent/CN107423452A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250514A (zh) * | 2016-08-04 | 2016-12-21 | 摩贝(上海)生物科技有限公司 | 基于Mysql数据库和SQL日志的跨国数据同步方法 |
CN106709043A (zh) * | 2016-12-30 | 2017-05-24 | 江苏瑞中数据股份有限公司 | 一种基于数据库日志的数据同步加载方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446315A (zh) * | 2018-02-07 | 2018-08-24 | 中国平安人寿保险股份有限公司 | 大数据迁移方法、装置、设备及存储介质 |
CN110597891A (zh) * | 2018-06-12 | 2019-12-20 | 武汉斗鱼网络科技有限公司 | MySQL聚合为PostgreSQL数据库的设备、系统、方法、存储介质 |
CN110597891B (zh) * | 2018-06-12 | 2022-06-21 | 武汉斗鱼网络科技有限公司 | MySQL聚合为PostgreSQL数据库的设备、系统、方法、存储介质 |
WO2019242115A1 (zh) * | 2018-06-20 | 2019-12-26 | 平安科技(深圳)有限公司 | 一种数据同步系统及方法 |
CN109992595A (zh) * | 2019-04-11 | 2019-07-09 | 北京启迪区块链科技发展有限公司 | 异构数据库转换方法、装置、设备和存储介质 |
CN110569142A (zh) * | 2019-08-29 | 2019-12-13 | 天津大学 | 一种oracle数据增量同步系统及方法 |
CN112804331A (zh) * | 2021-01-14 | 2021-05-14 | 杭州海兴泽科信息技术有限公司 | 一种基于消息总线的电能表数据处理方法、系统和电能表 |
CN114003622A (zh) * | 2021-12-30 | 2022-02-01 | 天津南大通用数据技术股份有限公司 | 一种事务型数据库之间巨大事务增量同步方法 |
CN114003622B (zh) * | 2021-12-30 | 2022-04-08 | 天津南大通用数据技术股份有限公司 | 一种事务型数据库之间巨大事务增量同步方法 |
CN115563088A (zh) * | 2022-12-08 | 2023-01-03 | 广东睿江云计算股份有限公司 | 不同类型的数据库的数据迁移方法及迁移系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107423452A (zh) | 一种电网异构数据库同步复制迁移方法 | |
CN105183860B (zh) | 数据同步方法和系统 | |
US20180137134A1 (en) | Data snapshot acquisition method and system | |
CN110647579A (zh) | 数据同步方法及装置、计算机设备与可读介质 | |
CN103823797A (zh) | 基于ftp协议的行业数据库数据实时同步系统 | |
CN107122355A (zh) | 数据迁移系统和方法 | |
CN107122360A (zh) | 数据迁移系统和方法 | |
CN107423436A (zh) | 一种用于不同类型数据库间在线数据迁移的方法 | |
CN102495906A (zh) | 一种实现断点续传的增量式数据迁移方法 | |
CN107122361A (zh) | 数据迁移系统和方法 | |
CN109871406B (zh) | 通用监控报表平台的设计方法 | |
CN108228755A (zh) | 基于日志解析技术的MySQL数据库到Hadoop平台的数据同步复制方法 | |
CN104679841A (zh) | 一种消费端数据流复制方法及系统 | |
CN109298978B (zh) | 一种指定位置的数据库集群的恢复方法及系统 | |
CN114048217A (zh) | 增量数据的同步方法和装置、电子设备和存储介质 | |
CN112231407B (zh) | PostgreSQL数据库的DDL同步方法、装置、设备和介质 | |
CN114218218A (zh) | 基于数据仓库的数据处理方法、装置、设备及存储介质 | |
CN109902070B (zh) | 一种面向WiFi日志数据的解析存储搜索方法 | |
CN108228756A (zh) | 基于日志解析技术的PG数据库到Hadoop平台的数据同步复制方法 | |
CN109446267B (zh) | 一种基于95598异地双活灾备模型的跨库数据集成系统及方法 | |
CN111913933A (zh) | 基于统一支撑平台的电网历史数据管理方法及系统 | |
CN104123104B (zh) | 日志控制系统及方法 | |
CN108322492B (zh) | 医疗数据同步方法及装置 | |
CN109886530A (zh) | 基于任务槽的前置机实时漏补方法和系统 | |
CN112947939B (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: 20171201 |