一种数据库同步方法及系统技术方案

技术编号:20221632 阅读:18 留言:0更新日期:2019-01-28 20:11
本发明专利技术公开了一种数据库同步方法及系统,其中数据库同步方法,包括:在同步端服务器获取其数据库的更新数据,对所述更新数据进行整理,并将更新数据定时发送给对应的消息队列;在被同步端服务器定时从消息队列服务中获取更新数据,进行整理后存入对应的数据库实现同步。本发明专利技术可以使得数据同步过程中不容易丢失,且不会对服务器的性能造成很大的影响。

【技术实现步骤摘要】
一种数据库同步方法及系统
本专利技术涉及数据传输方法,尤其涉及一种数据库同步方法及系统。
技术介绍
数据库同步数据时常见的一种数据传输应用场景,在以往的数据库同步数据中主要是利用数据库的主从同步进行数据的同步操作,但是在一些远程同步数据时,可能会存在由于网络或性能方面因素,使数据存在流失,从而数据变得不完整,导致同步过程失败。现有技术中专利号为201310017947.9的专利公开了一种消息交互装置,该装置利用消息队列服务进行各种服务的连接,使得服务器的服务间可以得到通信方式,但是该方式的各项服务都是一直存在的,没有相应的时间空隙,使得服务器方面的承载能力受到一定的影响。
技术实现思路
为了解决现有技术中数据库同步时数据丢失或者为了确保不丢失对服务器造成了巨大压力的技术问题,本专利技术提出了一种数据库同步方法,包括:在同步端服务器获取其数据库的更新数据,对所述更新数据进行整理,并将更新数据定时发送给对应的消息队列;在被同步端服务器定时从消息队列服务中获取更新数据,进行整理后存入对应的数据库实现同步。优选的,对同步端服务器的服务进行时间分配设定,使更新数据在同步端服务器空闲时发送给所述消息队列。优选的,对被同步端服务器的服务进行时间分配设定,使得在被同步端服务器空闲时向所述消息队列获取更新数据。具体的,对所述更新数据的整理包括识别所述更新数据的主键。在一实施例中,通过监控所述同步端服务器的数据库,在其数据库有数据变化时,立即获取所述更新数据。在另一实施例中,定时从所述同步端服务器的数据库获取所述更新数据。应用时,所述同步端服务器的数据库与被同步端服务器的数据库为主从同步数据库。本专利技术还提出了一种数据库同步系统,包括:至少一组同步端服务器和被同步端服务器,分别设置在同步端服务器和被同步端服务器上的定时数据发送模块和定时接收服务模块,以及消息队列;所述定时数据发送模块获取同步端服务器的数据库的更新数据并进行整理,并定时发送给所述消息队列;所述定时接收服务模块定时从所述消息队列中获取更新数据,整理后存入被同步端服务器的数据库实现同步。优选的,所述定时数据发送模块的定时发送时间设置在被同步端服务器的空闲时间内。优选的,所述定时接收服务模块的定时接收时间设置在同步端服务器的空闲时间内。应用时,所述同步端服务器的数据库与被同步端服务器的数据库为主从同步数据库。本专利技术采用消息队列搭配双向定时数据发送,既保障了数据存储的持久性,又可以保障服务器的性能,使得单个服务器可以进行合理的承载单个中小型系统运行,且可以搭载其它辅助服务进行搭配使用。附图说明下面结合实施例和附图对本专利技术进行详细说明,其中:图1是本专利技术的数据传输走向图。具体实施方式下面结合附图详细说明本专利技术的原理及最优实施例。如图1所示,在本实施例中,数据库同步系统包括至少一组同步端服务器和被同步端服务器,分别设置在同步端服务器和被同步端服务器上的定时数据发送模块和定时接收服务模块,以及消息队列。图1中仅仅只示意了一组同步端服务器和被同步端服务器的两个数据库。定时数据发送模块可以监听同步端数据库中的数据变动,获取对应的更新数据,或者定时数据发送模块可以定时定期地与同步端的数据库进行通讯获取更新数据,之后对更新数据进行整理,连接对应的消息队列的服务的接口,定时进行更新数据的传递,使得数据可以传输到对应的消息队列中。消息队列可以进行数据的持续化存储,而且更新数据是存储在对应的硬盘之中的,因此,使得更新数据的完整性可靠,且不会出现数据丢失的情况,在接收方没有进行相关的数据接收时,可以对数据进行长时间的存储,让对应的服务进行合理的资源分配,即能够让服务器进行合理的资源分配。定时接收服务模块定时从消息队列中获取更新数据,整理后存入被同步端服务器的数据库,进行更新数据的保存,完成不同数据库之间的数据同步。定时接收服务模块对更新数据的整理其中就包括了识别更新数据的主键,使其可以分配给对应的服务进行处理。通过定时发送和定时接收,使得服务器的压力变小,保障了服务器的性能。在一个优选实施例中,定时数据发送模块的定时发送时间设置在被同步端服务器的空闲时间内。定时接收服务模块的定时接收时间设置在同步端服务器的空闲时间内。具体的,服务器上主要的资源可以用于服务器上运行的主程序中,让主程序得到充分发挥,然后在主程序的使用变得减少时,此时服务器会有额外的资源进行空闲状态,此时进行辅助服务对服务器的性能影响将会变得很小。本专利技术的构思同样也可以应用在两个数据库为主从同步数据库的场景中。以上所述仅为本专利技术的较佳实施例而已,并不用以限制本专利技术,凡在本专利技术的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本专利技术的保护范围之内。本文档来自技高网...

【技术保护点】
1.一种数据库同步方法,其特征在于,包括:在同步端服务器获取其数据库的更新数据,对所述更新数据进行整理,并将更新数据定时发送给对应的消息队列;在被同步端服务器定时从消息队列服务中获取更新数据,进行整理后存入对应的数据库实现同步。

【技术特征摘要】
1.一种数据库同步方法,其特征在于,包括:在同步端服务器获取其数据库的更新数据,对所述更新数据进行整理,并将更新数据定时发送给对应的消息队列;在被同步端服务器定时从消息队列服务中获取更新数据,进行整理后存入对应的数据库实现同步。2.如权利要求1所述的数据库同步方法,其特征在于,对同步端服务器的服务进行时间分配设定,使更新数据在同步端服务器空闲时发送给所述消息队列。3.如权利要求1所述的数据库同步方法,其特征在于,对被同步端服务器的服务进行时间分配设定,使得在被同步端服务器空闲时向所述消息队列获取更新数据。4.如权利要求1所述的数据库同步方法,其特征在于,对所述更新数据的整理包括识别所述更新数据的主键。5.如权利要求1所述的数据库同步方法,其特征在于,通过监控所述同步端服务器的数据库,在其数据库有数据变化时,立即获取所述更新数据。6.如权利要求1所述的数据库同步方法,其特征在于,定时从所述同步端服务器的数据库获取所述更新数据。...

【专利技术属性】
技术研发人员:张敬嘉许芳萃罗晓王灵军
申请(专利权)人:珠海格力电器股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1