数据同步方法、装置及中转服务器制造方法及图纸

技术编号:24995989 阅读:45 留言:0更新日期:2020-07-24 17:58
本申请公开了一种数据同步方法、装置及中转服务器,涉及数据库技术领域。其中,中转服务器包括中转数据库,中转服务器获取源数据库的通信地址以及源数据库作为主数据库提供给从数据库的登录信息,基于通信地址和登录信息建立中转数据库和源数据库之间的连接,基于该连接访问源数据库的日志文件,并从源数据库的日志文件中识别数据库处理语句,在中转数据库中执行识别出的数据库处理语句,以对中转数据库中的数据进行更新。如此,可以提高源数据库和中转数据库的同步效率。

【技术实现步骤摘要】
数据同步方法、装置及中转服务器
本申请涉及数据库
,更具体地,涉及一种数据同步方法、装置及中转服务器。
技术介绍
应用服务器通常需要从其他数据源获取所需数据。一些场景中,应用服务器和数据源分别处于无法直接进行数据交换的网络中,此时,应用服务器将无法从该数据源获得所需数据。
技术实现思路
鉴于上述问题,本申请提出了一种数据同步方法、装置及中转服务器,用以改善上述问题。第一方面,本申请实施例提供了一种数据同步方法,应用于与源数据库通信连接的中转数据库,该方法包括:获取源数据库的通信地址以及该源数据库作为主数据库提供给从数据库的登录信息;基于通信地址和登录信息建立中转数据库和源数据库之间的连接;基于所述连接访问源数据库的日志文件,并从源数据库的日志文件中识别数据库处理语句;在中转数据库中执行识别出的数据库处理语句,以对中转数据库中的数据进行更新。第二方面,本申请实施例提供了一种数据同步装置,应用于与源数据库通信连接的中转服务器,中转服务器包括中转数据库,该装置包括:获取模块、连接模块、访问模块和同步模块。获取模块用于获取源数据库的通信地址以及源数据库作为主数据库提供给从数据库的登录信息。连接模块用于基于该通信地址和登录信息建立中转数据库和源数据库之间的连接。访问模块用于基于所述连接访问源数据库的日志文件,并从源数据库的日志文件中识别数据库处理语句。同步模块用于在中转数据库中执行识别出的数据库处理语句,以对中转数据库中的数据进行更新。第三方面,本申请实施例提供了一种中转服务器,包括:一个或等多个处理器;存储器;一个或多个程序,其中所述一个或多个程序被存储在存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述的方法。第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有程序代码,所述程序代码可被处理器调用执行上述的方法。相对于现有技术,本申请提供的方案,中转服务器获取源数据库的通信地址以及源数据库作为主数据库提供给从数据库的登录信息,基于通信地址和登录信息建立中转数据库与源数据库之间的连接,基于该连接访问源数据库的日志文件,从源数据库的日志文件中识别数据库处理语句,并在中转数据库中执行识别出的数据库处理语句,以对中转数据库中的数据进行更新。如此,一方面利用主从数据库机制维持了中转数据库与源数据库之间的连接,两者在发送数据后可以不必等待回执;另一方面,基于源数据库的日志文件中的数据库处理语句来实现中转数据库与源数据库的同步,相较于直接传输数据库数据的方式,减少了需要传输的数据,提高了同步效率。本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1示出了一些场景中的中转服务器与源数据库的交互示意图。图2示出了一种适用于本申请实施例的应用环境示意图。图3示出了根据本申请一个实施例的数据同步方法的流程示意图。图4示出了根据本申请另一个实施例的数据同步方法的流程示意图。图5示出了根据图4所示步骤S250的子步骤示意图。图6示出了图4所示实施例中的数据同步方法的另一流程示意图。图7示出了图4所示实施例中的数据同步方法的又一流程示意图。图8示出了图4所示实施例中的数据同步方法的又一流程示意图。图9示出了图4所示实施例中的数据同步方法的再一流程示意图。图10示出了根据申请实施例的一种数据同步装置的框图。图11是本申请实施例的用于执行根据本申请实施例的数据同步方法的中转服务器的框图。图12是本申请实施例的用于保存或者携带实现根据本申请实施例的数据同步方法的程序代码的存储单元。具体实施方式为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。一些场景中,应用服务器需要从源数据库获取数据,以实现相应的服务。但是,由于数据的特殊性,或者是部署应用服务器或源数据库的网络环境存在网络延迟等原因,应用服务器与源数据库之间可能出现无法相互直接访问的情况,即应用服务器与源数据库无法直接进行数据交换。此时,应用服务器将无法向用户提供前述服务。请参照图1,一些实施方式中,可以在应用服务器和源数据库都能够直接访问的网络环境中部署一中转服务器901,并在该中转服务器901与源数据库902之间设置一同步模块903。中转服务器901用于获取应用服务器发送的第一数据,同步模块903用于定期轮询中转服务器901,获取中转服务器901中的第一数据并将该第一数据发送给源数据库902,并在接收到源数据库902的确认响应时,确定第一数据同步成功,在特定时长没有收到回执时,重新向源数据库902发送第一数据。同步模块903还用于定期轮询源数据库902,获取源数据库902中的待同步的第二数据并将该第二数据发送给中转服务器901,并在接收到中转服务器901的回执时,确定第二数据同步成功,若特定时长没有接收到中转服务器901的确认响应,则重新向中转服务器901发送第二数据。中转服务器901获得第二数据后,再将第二数据发送给应用服务器。但是,上述实施方式中,一方面,通过中转服务器和同步模块直接传输数据库数据,数据量较大,同步效率低。另一方面,由于中转服务器与源数据库之间的没有建立稳定可靠的通信连接,导致每次传输数据后都需要数据接收方返回相应的确认响应进行确认,然后才可以进行下一次数据传输,进一步降低了数据同步的效率。经过专利技术人长期的研究,本申请实施例提出了一种数据同步方法、装置及中转服务器,可以有效提高中转服务器和源数据库之间的数据同步效率。下面将对该内容进行详细阐述。请参照图2,图2为本申请实施例提供的应用环境示意图。其中,中转服务器100通过网络与源数据库200和应用服务器300通信连接,源数据库200与应用服务器300相互之间无法直接访问,换言之,源数据库200与应用服务器300无法直接进行数据交换。应用服务器300可以为部署有特定服务端程序的服务器,该服务端程序在向客户端提供服务的过程中,需要使用源数据库200中的数据。中转服务器100中可以部署有中转数据库101,并存储有源数据库200的备份数据。可以理解,所述备份数据是在某一特定时刻从源数据库200中复制并获得的数据,在得到该备份数据之后,源数据库200中的数据会随着数据库语句在源数据库200中被执行而发生变化。请参照图3,图3为本申请一实施例提供的一种数据同步方法的流程示意图,该方法可以应用于图2所示的中转服务器100。下面将对该方法包括的步骤进行阐述。步骤S110,获取源数据库的通信地址以及所述源数据库作为主数据库提供给从数据本文档来自技高网
...

【技术保护点】
1.一种数据同步方法,其特征在于,应用于与源数据库通信连接的中转服务器,所述中转服务器包括中转数据库,所述方法包括:/n获取所述源数据库的通信地址以及所述源数据库作为主数据库提供给从数据库的登录信息;/n基于所述通信地址和所述登录信息建立所述中转数据库和所述源数据库之间的连接;/n基于所述连接访问所述源数据库的日志文件,并从所述源数据库的日志文件中识别数据库处理语句;/n在所述中转数据库中执行识别出的数据库处理语句,以对所述中转数据库中的数据进行更新。/n

【技术特征摘要】
1.一种数据同步方法,其特征在于,应用于与源数据库通信连接的中转服务器,所述中转服务器包括中转数据库,所述方法包括:
获取所述源数据库的通信地址以及所述源数据库作为主数据库提供给从数据库的登录信息;
基于所述通信地址和所述登录信息建立所述中转数据库和所述源数据库之间的连接;
基于所述连接访问所述源数据库的日志文件,并从所述源数据库的日志文件中识别数据库处理语句;
在所述中转数据库中执行识别出的数据库处理语句,以对所述中转数据库中的数据进行更新。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到目标应用服务器针对所述源数据库发送的数据访问请求时,从所述中转数据库中查找与所述数据访问请求对应的目标数据;
将所述目标数据发送给所述目标应用服务器。


3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到目标应用服务器针对所述源数据库发送的数据处理请求时,对所述中转数据库中的数据执行所述数据操作请求对应的目标处理语句;
在所述中转数据库的日志文件中写入所述目标处理语句对应的日志记录。


4.根据权利要求3所述的方法,其特征在于,所述通信地址为第一通信地址,所述登录信息为第一登录信息,所述连接为第一连接,所述日志记录包括所述目标处理语句,所述方法还包括:
获取所述中转数据库的第二通信地址以及所述中转数据库作为主数据库提供给从数据库的第二登录信息;
向所述源数据库发送所述第二通信地址和所述第二登录信息,使所述源数据库基于所述第二通信地址和所述第二登录信息建立与所述中转数据库的第二连接,并通过所述第二连接读取所述中转数据库的日志文件中的所述目标处理语句,并执行所述目标处理语句。


5.根据权利要求2-4中任意一项所述的方法,其特征在于,所述目标应用服务器和所述源数据库无法进行数据交换。


6.根据权利要求1-4中任意一项所述的方法,其特征在于,...

【专利技术属性】
技术研发人员:张昌燕
申请(专利权)人:OPPO重庆智能科技有限公司
类型:发明
国别省市:重庆;50

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

1