CN104537046B - 数据补全方法和装置 - Google Patents

数据补全方法和装置 Download PDF

Info

Publication number
CN104537046B
CN104537046B CN201410818146.7A CN201410818146A CN104537046B CN 104537046 B CN104537046 B CN 104537046B CN 201410818146 A CN201410818146 A CN 201410818146A CN 104537046 B CN104537046 B CN 104537046B
Authority
CN
China
Prior art keywords
database
data
new primary
primary database
master
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.)
Expired - Fee Related
Application number
CN201410818146.7A
Other languages
English (en)
Other versions
CN104537046A (zh
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.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201410818146.7A priority Critical patent/CN104537046B/zh
Publication of CN104537046A publication Critical patent/CN104537046A/zh
Priority to PCT/CN2015/094153 priority patent/WO2016101718A1/zh
Priority to US15/539,966 priority patent/US10045397B2/en
Application granted granted Critical
Publication of CN104537046B publication Critical patent/CN104537046B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

本发明实施例提供了一种数据补全方法和装置,涉及计算机领域。本发明所提供的方法,通过在主从式的数据库集群进行主数据库切换的过程中,从数据库集群中选择一从数据库以作为新的主数据库,依次建立新的主数据库与所有其他从数据库的第一连接,将新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中,以完成对新的主数据库的数据补全,使新的主数据库拥有数据库集群中最新的数据,保证主数据库的顺利切换,从而不会影响数据库的业务的正常进行。

Description

数据补全方法和装置
技术领域
本发明涉及计算机领域,具体涉及一种数据补全方法和装置。
背景技术
在目前,关系型数据库的应用非常广泛,例如MYSQL数据库。目前,关系型数据库集群中多采用一主多从的架构。如图1所示,为一MYSQL数据库集群的架构示意图,其包括:主数据库master和三个从数据库,三个从数据库分别为:
Slave-1、Slave-2和Slave3。
例如图1中所示,Slave-1和Slave-2位于机房1,Slave3位于机房2。主数据库master分别与从数据库Slave-1、Slave-2和Slave3连接。
在现实对数据库的使用中,主数据库master有可能因为各种原因宕机,为了减少数据库对业务的影响,这时则需要选择一个从数据库作为新的主数据库来代替原来的主数据库。在数据库集群中要求主数据库中需保存有当前数据库集群中最新的数据,因此需要对新的主数据库中的数据进行补全。但是,目前并没有有效的技术手段能在数据库集群的主数据库进行切换时对新的主数据库进行数据补全。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的数据补全方法和相应地装置。
依据本发明的一个方面,提供了一种数据补全方法,应用于主从式数据库集群中主数据库切换,所述方法包括:
从所述数据库集群中选择一从数据库以作为新的主数据库;
依次建立所述新的主数据库与所有其他从数据库的第一连接;
将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中;以及
当完成对所述所有其他从数据库的数据比对时,结束对所述新的主数据库的数据补全。
可选地,所述从所述数据库集群中选择一从数据库以作为新的主数据库的步骤进一步包括:
在所述依次建立新的主数据库与所有从数据库的连接之前,获取所述数据库集群的所有从数据库的列表;以及
在所述列表记录的所述所有从数据库中,筛选得到一符合预设条件的从数据库作为新的主数据库。
可选地,所述预定条件包括以下至少之一:
从数据库状态标识为alive;以及
从数据库延迟事务数量小于预设数量。
可选地,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位。
可选地,所述将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中的步骤进一步包括:
在完成所述新的主数据库与一其他从数据库的数据比对之后,断开两者之间的所述第一连接。
可选地,所述方法进一步包括:
在结束对所述新的主数据库的数据补全之后,依次建立所述新的主数据库与所有其他从数据库之间的第二连接;以及
将所述新的主数据库的数据同步至所有其他从数据库。
可选地,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。
可选地,所述数据库集群为MYSQL数据库集群。
依据本发明的一个方面,提供了一种数据补全方法,应用于主从式数据库集群中主数据库切换,所述方法包括:
a)从所述数据库集群中选择一从数据库以作为新的主数据库;
b)建立所述新的主数据库与一其他从数据库的第一连接;
c)将所述新的主数据库与所述其他从数据库的数据进行比对,以将所述其他从数据库中的新数据同步到所述新的主数据库中;
d)重复步骤b)和c),直至所述新的主数据库与所有其他从数据库都完成数据比对;以及
e)建立所述新的主数据库与所有其他从数据库之间的第二连接,以将所述新的主数据库的数据同步至所有其他从数据库。
可选地,所述将所述新的主数据库与所述其他从数据库的数据进行比对,以将所述其他从数据库中的新数据同步到所述新的主数据库中的步骤进一步包括:
f)在完成所述新的主数据库与所述其他从数据库的数据比对之后,断开两者之间的所述第一连接。
可选地,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位。
可选地,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。
依据本发明的一个方面,提供了一种数据补全装置,应用于主从式数据库集群中主数据库切换,所述装置包括:
第一主库选取模块,适于从所述数据库集群中选择一从数据库以作为新的主数据库;
第一连接建立模块,适于依次建立所述新的主数据库与所有其他从数据库的第一连接;
第一同步模块,适于将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中;
第一补全确认模块,适于当完成对所述所有其他从数据库的数据比对时,结束对所述新的主数据库的数据补全。
可选地,所述第一主库选取模块进一步包括:
列表获取单元,适于在所述依次建立新的主数据库与所有从数据库的连接之前,获取所述数据库集群的所有从数据库的列表;
主库筛选单元,适于在所述列表记录的所述所有从数据库中,筛选得到一符合预设条件的从数据库作为新的主数据库。
可选地,所述预定条件包括以下至少之一:
从数据库状态标识为alive;以及
从数据库延迟事务数量小于预设数量。
可选地,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位。
可选地,所述第一同步模块进一步适于:
在完成所述新的主数据库与一其他从数据库的数据比对之后,断开两者之间的所述第一连接。
可选地,所述装置进一步包括:
第二连接建立模块,适于在结束对所述新的主数据库的数据补全之后,依次建立所述新的主数据库与所有其他从数据库之间的第二连接;
第二同步模块,适于将所述新的主数据库的数据同步至所有其他从数据库。
可选地,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。
可选地,所述数据库集群为MYSQL数据库集群。
依据本发明的一个方面,提供了一种数据补全装置,应用于主从式数据库集群中主数据库切换,所述装置包括:
第二主库选取模块,适于从所述数据库集群中选择一从数据库以作为新的主数据库;
第三连接建立模块,适于建立所述新的主数据库与一其他从数据库的第一连接;
第三同步模块,适于将所述新的主数据库与所述其他从数据库的数据进行比对,以将所述其他从数据库中的新数据同步到所述新的主数据库中;
第二补全确认模块,适于重复第三连接建立模块与所述第三同步模块执行的操作,直至所述新的主数据库与所有其他从数据库都完成数据比对;
第四连接建立模块,适于建立所述新的主数据库与所有其他从数据库之间的第二连接,以将所述新的主数据库的数据同步至所有其他从数据库。
可选地,所述第三同步模块进一步适于:
在完成所述新的主数据库与所述其他从数据库的数据比对之后,断开两者之间的所述第一连接。
可选地,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位。
可选地,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。
本发明实施例提供了一种数据补全方法和装置,在主从式的数据库集群进行主数据库切换的过程中,从数据库集群中选择一从数据库以作为新的主数据库,依次建立新的主数据库与所有其他从数据库的第一连接,将新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中,以完成对新的主数据库的数据补全,使新的主数据库拥有数据库集群中最新的数据,保证主数据库的顺利切换,从而不会影响数据库的业务的正常进行。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是现有的一种MYSQL数据库集群的架构示意图;
图2是本发明一个实施例提供的一种数据补全方法流程示意图;
图3是本发明一个实施例提供的一种MYSQL数据库集群中的主数据库切换时的数据补全方法流程示意图;
图4是本发明一个实施例提供的一种选取MYSQL数据库集群的新的主数据库的方法流程示意图;
图5是本发明一个实施例提供的一种选取新的主数据库后的MYSQL数据库集群的架构示意图;
图6是本发明一个实施例提供的一种数据补全方法流程示意图;
图7是本发明一个实施例提供的一种MYSQL数据库主数据库切换时的数据补全方法流程示意图;
图8是本发明一个实施例提供的一种数据补全装置结构示意图;
图9是本发明一个实施例提供的一种数据补全装置结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应该被这里阐述的实施例所限制。相反,提供这些实施例是为了能够透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
本发明实施例提供了一种数据补全方法,其可以实现在数据库集群的主数据库的切换过程中对新的主数据库进行数据补全,保证数据库集群的正常运行。
在本实施例一提供的数据补全方法是首先建立新的主数据库与所有其他从数据库的连接,再与从数据库进行数据比对和同步的方式。
图2是本实施例提供的一种数据补全方法流程图,该方法应用于主从式数据库集群中主数据库切换,具体包括步骤S202至步骤S208。
S202:从数据库集群中选择一从数据库以作为新的主数据库。
S204:依次建立新的主数据库与所有其他从数据库的第一连接。
S206:将新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中。
S208:当完成对所有其他从数据库的数据比对时,结束对新的主数据库的数据补全。
本发明实施例提供了一种数据补全方法,在主从式的数据库集群进行主数据库切换的过程中,从数据库集群中选择一从数据库以作为新的主数据库,依次建立新的主数据库与所有其他从数据库的第一连接,将新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中,以完成对新的主数据库的数据补全,使新的主数据库拥有数据库集群中最新的数据,保证主数据库的顺利切换,从而不会影响数据库的业务的正常进行。
实施例二
本实施例为上述实施例一的一种具体应用场景,通过本实施例,能够更加清楚、具体地阐述本发明所提供的方法。
应可理解,本发明并不限定数据库的类型,只要可以应用本发明下述方案以达到高可用目的的数据库都适用于此。此外,所述连接控制装置也不限定于通过服务器来实现,本领域技术人员在阅读本发明的基础上亦可以其他方式来实施所述的连接控制装置,其皆应涵盖在本发明的范围内。
以下,将以MYSQL数据为例说明本发明的技术方案:
在本实施例二中,仍以背景技术中图1所示的MYSQL数据库集群为例,当前数据库集群的主数据库master宕机而无法提供服务,将Slave-1作为新的主数据库进行切换时,对Slave-1进行数据补全为例进行说明。
为了对本发明的思想进行更清楚的说明,本实施例以完整的主数据库切换过程为例进行说明。
如图3所示,为本发明实施例提供的一种MYSQL数据库集群中的主数据库切换时的数据补全方法流程图,该方法共包括步骤S301至S306。
首先执行步骤S301,当MYSQL数据库的主数据库因宕机无法提供服务时,选取新的主数据库。
需要说明的是,在MYSQL数据库的主数据库宕机时,会导致整个MYSQL数据库的集群无法完成业务,因此需要选取其中的一个从数据库作为新的主数据库进行切换,以恢复该MYSQL数据库的业务。但是,进行MYSQL数据库的新的主数据库的选取以及切换可以包括多种方法,在本发明中并不限定在使用何种方法进行MYSQL数据库的新的主数据库的选取以及切换。
并且,新的主数据库可以是该MYSQL数据库集群中的,也可以是其他MYSQL数据库集群中的。若新的主数据库是当前MYSQL数据库集群中的,则需要补全的数据量较小,若是其他MYSQL数据库集群中的,则需要补全的数据可能较多。但是当数据量不大时,差别不明显。
为了使得本发明的技术方案更加清楚,本发明实施例还提供了图4,为一种选取MYSQL数据库集群的新的主数据库的方法流程图,采取在本MYSQL数据库集群中筛选得到新的主数据库的方式,包括如下步骤:
步骤S301-1,获取MYSQL数据库集群的所有从数据库的列表。
例如图1所示的例子,则从数据库为:
Slave-1、Slave-2和Slave-3。
因此,可以有上述三个从数据库组成MYSQL数据库的所有从数据库的列表,在该列表中可以使用上述三个从数据库的IP地址进行记录,新的主数据库即从该列表中的从数据库中选取。
步骤S301-2,在上述列表所记录的从数据库中筛选一个从数据库以作为新的主数据库。
进一步地,主数据库和从数据库均开启了gtid信息是数据库集群可以进行主数据库切换的首要条件,同时为了使得新的主数据库更加优异,除了开启了gtid信息,还可以根据如下几个条件进行筛选:
从数据库的状态为alive状态、延迟事务数量小于预设数量。
在从数据库中进行新的主数据库的筛选时,至少可以包括如下三种方式:
(1)以循环的方式依次对所有的从数据库进行判断,若得到任意一个符合作为新的主数据库的条件的从数据库,即可将该从数据库作为新的主数据库,停止对其他从数据库的判断。
(2)以循环的方式依次对所有的从数据库进行判断,全部判断结束后,在符合新的主数据库的条件的从数据库中选取其中条件最好的一个从数据库作为新的主数据库。
例如,延迟时间最小、延迟事务数量最少等。
(3)以循环的方式依次对所有的从数据库进行判断,全部判断结束后,在符合新的主数据库的条件的从数据库中任意选取一个从数据库作为新的主数据库。
本实施例中,对一个从数据库的筛选过程,通常可以包括如下A、B、C三个步骤:
A)判断当前从数据库是否为alive状态,如果是,则继续进入步骤B的筛选,如果不是,则该从数据库不符合作为新的主数据库的条件,继续对下一个从数据库进行判断。
其中,判断当前从数据库是否为alive状态的方法可以是:
对当前从数据库执行ping操作,判断其返回相应的延迟时间是否超过预设时间(例如可以是0.5ms),如果不是,则判定其为alive状态,如果是,则判断其不是alive状态。
B)判断当前从数据库的gtid、binlog信息是否开启,如果是,则进入步骤C的筛选,如果不是,则该从数据库不符合作为新的主数据库的条件,继续对下一个从数据库进行判断。
其中,gtid在原主数据库master上的事务提交时被创建,由于gtid需要在全局的主-备拓扑结构中保持唯一性,因此通过gtid我们可以在自动切换时对一些复杂的复制拓扑很方便的提升新主数据库,例如通过指向特定的gtid来确定新备库复制坐标。
gtid一般由两部分组成:
gtid=source_id:transaction_id
source_id用于标示源服务器,用server_uuid来表示,这个值在第一次启动时生成,并写入到MYSQL数据库的配置文件data/auto.cnf中;
transaction_id则是根据在源服务器上第几个提交的事务来确定。
一般情况下,gtid被记录在MYSQL数据库的binlog中,它在binlog中表现的事件类型可以是:
GTID_LOG_EVENT:用于表示随后的事务的GTID;
ANONYMOUS_GTID_LOG_EVENT:匿名GTID事件类型;
PREVIOUS_GTIDS_LOG_EVENT:用于表示当前binlog文件之前已经执行过的gtid集合。
它一般被记录在binlog的文件头。
在进行查询时,可以通过执行check_candidate_eligibility函数来查询gtid、binlog等信息并确保其开启。
C)判断当前从数据库延迟的事务数量是否小于预设数量,如果是,则当前从数据库符合新的主数据库的筛选条件,如果不是,则当前从数据库不符合新的主数据库的筛选条件,继续对下一个从数据库进行判断。
其中,若从数据库延迟的事务数量过多,则说明其状况不好,不能用作新的主数据库,以免影响整个MYSQL数据库的运行效率,预设数量可以为100个。
需要说明的是,在进行新的主数据库的选取时,不一定按照步骤A、B、C的顺序进行判断,可以采取任意顺序进行判断。类似地,选取新的主数据库时也不限定一定要包含如上A、B、C三个步骤,也可以仅包含其中一个或者两个,相关技术方案皆应涵盖在本发明的范围内。
在本实施例中,以选取Slave-1为新的主数据库为例,如图5所示为一种选取新的主数据库后的MYSQL数据库集群的架构示意图。
在新的主数据库Slave-1被选定后,执行步骤S302,建立新的主数据库与其中所有其他从数据库的第一连接。
在本实施例中,在对新的主数据库进行数据补全的过程中,需要将新的主数据库依次与其他所有的从数据库建立第一连接。在本发明中,并不对建立连接的顺序进行限定,可以是与从数据库按照顺序建立连接,也可以是按照任意顺序建立连接,只要将所有的从数据库均与新的主数据库建立连接即可。
其中,该第一连接为主从式连接,其他从数据库与新的主数据库为主、从关系。例如在本实施例中,Slave-1与Slave-2、Slave-3的关系为主、从关系。
在本实施例中,以首先建立新的主数据库Slave-1和从数据库Slave-2的连接为例进行说明。
在建立连接后,执行步骤S303,比较新的主数据库的数据与所有其他从数据库中的数据,以将其他从数据库中的新数据同步到新的主数据库中。
需要说明的是,在MYSQL数据库的集群机制中,对于其中的主数据库master和多个从数据库的数据应是一致的,因此若Slave-1被切换为新的主数据库,需要确保其具有整个MYSQL数据库中的最新的数据,因此,需要将Slave-1中的数据与其他所有的从数据库中的数据一一进行比对。
在与从数据库进行数据比对时,可以通过一一比对的形式,若其中一从数据库中存在新数据,将该从数据库中的新的数据同步到新的主数据库中。
进一步地,在每完成对其中一从数据库的比对时,本方法还可以包括:
断开该从数据库与新的主数据库之间的第一连接。
在另一实施例中,也可以先逐一建立新的主库与所有从库的第一连接,之后再逐一完成数据同步,然后再断开所有第一连接。本领域技术人员应可理解,只要可以完成数据比对和补全,本发明并不限定连接的建立、断开以及数据比对的顺序,相关的技术方案皆应涵盖在本发明的范围内。
完成对于新的主数据库的数据补全后,即可执行步骤S304,将MYSQL数据库集群的主数据库切换到新的主数据库。
其中,对于主数据库的切换,可以通过修改MYSQL数据库的配置文件完成。
进一步地,在完成对于新的主数据库的切换后,还可以包括:
将新的主数据库的更新配置更新到中间层,恢复业务。
进一步地,在完成为了主数据库的切换后,为了保证数据库集群中的所有数据库的数据一致,本方法还可以包括:
依次建立新的主数据库与所有其他从数据库之间的第二连接,将新的主数据库中的数据同步到所有其他从数据库中。
其中,该第二连接也为主从式连接,且在该第二连接中,新的主数据库与其他从数据库分别具有主、从的地位。
本发明实施例提供了一种MYSQL数据库集群中主数据库切换时的数据补全方法,在MYSQL数据库集群的主数据库无法提供服务时,从MYSQL数据库集群中选择一从数据库以作为新的主数据库,依次建立新的主数据库与所有其他从数据库的第一连接,将新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中,以完成对新的主数据库的数据补全,使新的主数据库拥有MYSQL数据库集群中最新的数据,保证主数据库的顺利切换,从而不会影响MYSQL数据库的业务的正常进行。
实施例三
本发明实施例提供了一种数据补全方法,其可以实现在数据库集群的主数据库的切换过程中对新的主数据库进行数据补全,保证数据库集群的正常运行。
与实施例一、二的区别在于,本实施例三提供的数据补全方法采用的是依次建立新的主数据库与其他从数据库的连接,依次与其他从数据库进行比对和同步的方式。
图6是本实施例提供的一种数据补全方法流程图,该方法应用于主从式数据库集群中主数据库切换,具体包括步骤S602至步骤S610。
S602:从数据库集群中选择一从数据库以作为新的主数据库。
S604:建立新的主数据库与一其他从数据库的第一连接。
S606:将新的主数据库与上述其他从数据库的数据进行比对,以将该其他从数据库中的新数据同步到新的主数据库中。
S608:重复步骤S604和S606,直至新的主数据库与所有其他从数据库都完成数据比对。
S610:建立新的主数据库与所有其他从数据库之间的第二连接,以将新的主数据库的数据同步至所有其他从数据库。
本发明实施例提供了一种数据补全方法,在主从式的数据库集群进行主数据库切换的过程中,从数据库集群中选择一从数据库以作为新的主数据库,建立新的主数据库与一其他从数据库的第一连接,将新的主数据库与上述其他从数据库的数据进行比对,以将该其他从数据库中的新数据同步到新的主数据库中,重复上述建立第一连接和数据同步的步骤,直至新的主数据库与所有其他从数据库都完成数据比对,建立新的主数据库与所有其他从数据库之间的第二连接,以将新的主数据库的数据同步至所有其他从数据库,可以以完成对新的主数据库的数据补全,使新的主数据库拥有数据库集群中最新的数据,保证主数据库的顺利切换,同时也将所有从数据库中的数据更新为最新数据,从而不会影响数据库的业务的正常进行。
实施例四
本实施例为上述实施例三的一种具体应用场景,通过本实施例,能够更加清楚、具体地阐述本发明所提供的方法。
应可理解,本发明并不限定数据库的类型,只要可以应用本发明下述方案以达到高可用目的的数据库都适用于此。此外,所述连接控制装置也不限定于通过服务器来实现,本领域技术人员在阅读本发明的基础上亦可以其他方式来实施所述的连接控制装置,其皆应涵盖在本发明的范围内。
以下,将以Mysql数据为例说明本发明的技术方案:
在本实施例二中,也以背景技术中图1所示的MYSQL数据库集群为例,当前数据库集群的主数据库master宕机而无法提供服务,将Slave-1作为新的主数据库进行切换时,对Slave-1进行数据补全为例进行说明。
为了对本发明的思想进行更清楚的说明,本实施例以完整的主数据库切换过程为例进行说明。
如图7所示,为本发明实施例提供的一种MYSQL数据库主数据库切换时的数据补全方法流程图,该方法共包括步骤S701至S706。
首先执行步骤S701,当MYSQL数据库集群的主数据库无法提供服务时,选取新的主数据库。
其中,选取新的主库的方法与实施例二的步骤S301中类似,这里不再赘述。
在新的主数据库Slave-1被选定后,执行步骤S702,建立新的主数据库与其中一个从数据库的第一连接。
与实施例一和实施例二不同的是,本实施例所提供的方法是:在对新的主数据库进行数据补全的过程中,将新的主数据库依次与其他所有的从数据库建立连接、依次进行比对和同步,在完成对一个从数据库的比对和同步后,断开第一连接,与下一个从数据库建立连接。在本发明中,并不对建立连接的顺序进行限定,可以是与从数据库按照顺序建立连接,也可以是按照任意顺序建立连接,只要将所有的从数据库全部循环一遍即可。
其中,其中,该第一连接为主从式连接,其他从数据库与新的主数据库为主、从关系。例如在本实施例中,Slave-1与Slave-2、Slave-3的关系为主、从关系。
在本实施例中,以首先建立新的主数据库Slave-1和从数据库Slave-2的连接为例进行说明。
在建立连接后,执行步骤S703,比较新的主数据库的数据与该从数据库中的数据,若从数据库中的没有新数据,则返回步骤S702,建立与下一从数据库的第一连接;若该从数据库中的存在新的数据,则执行步骤S704。
需要说明的是,在MYSQL数据库的集群机制中,对于其中的主数据库master和多个从数据库的数据应是一致的,因此若Slave-1被切换为新的主数据库,需要确保其具有整个MYSQL数据库中的最新的数据,因此,需要将Slave-1中的数据与其他所有的从数据库中的数据一一进行比对。
在步骤S704中,将该从数据库中的新的数据同步到新的主数据库中。
继而执行步骤S705,断开新的主数据库与该从数据库的第一连接。
继而执行步骤S706,判断是否完成了对所有从数据库的比对,如果是,则执行步骤S707,如果不是,则返回步骤S702,建立与下一从数据库的连接。
完成对于新的主数据库的数据补全后,即可执行步骤S707,依次建立新的主数据库与所有其他从数据库之间的第二连接,将新的主数据库中的数据同步到所有其他从数据库中。
其中,该第二连接也为主从式连接,且在该第二连接中,新的主数据库与其他从数据库分别具有主、从的地位。
继而执行步骤S708,将MYSQL数据库的主数据库切换到新的主数据库。
其中,对于主数据库的切换,可以通过修改MYSQL数据库的配置文件完成。
进一步地,在完成对于新的主数据库的切换后,还可以包括:
将新的主数据库的更新配置更新到中间层,恢复业务。
本发明实施例提供了一种数据补全方法,在主从式的数据库集群进行主数据库切换的过程中,从数据库集群中选择一从数据库以作为新的主数据库,建立新的主数据库与一其他从数据库的第一连接,将新的主数据库与上述其他从数据库的数据进行比对,以将该其他从数据库中的新数据同步到新的主数据库中,重复上述建立第一连接和数据同步的步骤,直至新的主数据库与所有其他从数据库都完成数据比对,建立新的主数据库与所有其他从数据库之间的第二连接,以将新的主数据库的数据同步至所有其他从数据库,可以以完成对新的主数据库的数据补全,使新的主数据库拥有数据库集群中最新的数据,保证主数据库的顺利切换,同时也将所有从数据库中的数据更新为最新数据,从而不会影响数据库的业务的正常进行。
实施例五
本实施例五优选地对应于实施例一和实施例二提供了一种数据补全装置。
图8是本发明一个实施例提供的一种数据补全装置结构框图,应用于主从式数据库集群中主数据库切换,该装置800包括:
第一主库选取模块810,适于从数据库集群中选择一从数据库以作为新的主数据库;
第一连接建立模块820,适于依次建立新的主数据库与所有其他从数据库的第一连接;
第一同步模块830,适于将新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到新的主数据库中;
第一补全确认模块840,适于当完成对所有其他从数据库的数据比对时,结束对新的主数据库的数据补全。
可选地,第一主库选取模块810进一步包括:
列表获取单元811,适于在依次建立新的主数据库与所有从数据库的连接之前,获取数据库集群的所有从数据库的列表;
主库筛选单元812,适于在上述列表记录的所有从数据库中,筛选得到一符合预设条件的从数据库作为新的主数据库。
可选地,所述预定条件包括以下至少之一:
从数据库状态标识为alive;以及
从数据库延迟事务数量小于预设数量。
可选地,第一连接为主从式连接,且其他从数据库与新的主数据库分别具有主、从地位。
可选地,第一同步模块830进一步适于:
在完成新的主数据库与一其他从数据库的数据比对之后,断开两者之间的所述第一连接。
可选地,该装置800进一步包括:
第二连接建立模块850,适于在结束对所述新的主数据库的数据补全之后,依次建立所述新的主数据库与所有其他从数据库之间的第二连接;
第二同步模块860,适于将新的主数据库的数据同步至所有其他从数据库。
可选地,第二连接为主从式连接,且新的主数据库与其他从数据库分别具有主、从的地位。
可选地,所述数据库集群为MYSQL数据库集群。
本发明实施例提供了一种数据补全装置,在主从式的数据库集群进行主数据库切换的过程中,从数据库集群中选择一从数据库以作为新的主数据库,依次建立新的主数据库与所有其他从数据库的第一连接,将新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中,以完成对新的主数据库的数据补全,使新的主数据库拥有数据库集群中最新的数据,保证主数据库的顺利切换,从而不会影响数据库的业务的正常进行。
实施例六
本实施例六优选地对应于实施例三和实施例四提供了一种数据补全装置。
图9是本发明一个实施例提供的一种数据补全装置结构框图,应用于主从式数据库集群中主数据库切换,该装置900包括:
第二主库选取模块910,适于从数据库集群中选择一从数据库以作为新的主数据库;
第三连接建立模块920,适于建立新的主数据库与一其他从数据库的第一连接;
第三同步模块930,适于将新的主数据库与其他从数据库的数据进行比对,以将该其他从数据库中的新数据同步到新的主数据库中;
第二补全确认模块940,适于重复第三连接建立模块920与第三同步模块930执行的操作,直至新的主数据库与所有其他从数据库都完成数据比对;
第四连接建立模块950,适于建立新的主数据库与所有其他从数据库之间的第二连接,以将新的主数据库的数据同步至所有其他从数据库。
可选地,第三同步模块930进一步适于:
在完成所述新的主数据库与其他从数据库的数据比对之后,断开两者之间的所述第一连接。
可选地,所述第一连接为主从式连接,且其他从数据库与新的主数据库分别具有主、从地位。
可选地,所述第二连接为主从式连接,且新的主数据库与其他从数据库分别具有主、从的地位。
本发明实施例提供了一种数据补全装置,在主从式的数据库集群进行主数据库切换的过程中,从数据库集群中选择一从数据库以作为新的主数据库,建立新的主数据库与一其他从数据库的第一连接,将新的主数据库与上述其他从数据库的数据进行比对,以将该其他从数据库中的新数据同步到新的主数据库中,重复上述建立第一连接和数据同步的步骤,直至新的主数据库与所有其他从数据库都完成数据比对,建立新的主数据库与所有其他从数据库之间的第二连接,以将新的主数据库的数据同步至所有其他从数据库,可以以完成对新的主数据库的数据补全,使新的主数据库拥有数据库集群中最新的数据,保证主数据库的顺利切换,同时也将所有从数据库中的数据更新为最新数据,从而不会影响数据库的业务的正常进行。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据补全装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。
本发明实施例提供了A1.一种数据补全方法,应用于主从式数据库集群中主数据库切换,所述方法包括:从所述数据库集群中选择一从数据库以作为新的主数据库;依次建立所述新的主数据库与所有其他从数据库的第一连接;将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中;以及,当完成对所述所有其他从数据库的数据比对时,结束对所述新的主数据库的数据补全。A2.根据A1所述的方法,其中,所述从所述数据库集群中选择一从数据库以作为新的主数据库的步骤进一步包括:在所述依次建立新的主数据库与所有从数据库的连接之前,获取所述数据库集群的所有从数据库的列表;以及,在所述列表记录的所述所有从数据库中,筛选得到一符合预设条件的从数据库作为新的主数据库。A3.根据A2所述的方法,其中,所述预定条件包括以下至少之一:从数据库状态标识为alive;以及,从数据库延迟事务数量小于预设数量。A4.根据A1-A3中任一项所述的方法,其中,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位。A5.根据A1-A4中任一项所述的方法,其中,所述将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中的步骤进一步包括:在完成所述新的主数据库与一其他从数据库的数据比对之后,断开两者之间的所述第一连接。A6.根据A1-A5中任一项所述的方法,其中,所述方法进一步包括:在结束对所述新的主数据库的数据补全之后,依次建立所述新的主数据库与所有其他从数据库之间的第二连接;以及,将所述新的主数据库的数据同步至所有其他从数据库。A7.根据A6所述的方法,其中,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。A8.根据A1-A7中任一项所述的方法,其中,所述数据库集群为MYSQL数据库集群。
本发明实施例提供了B9.一种数据补全方法,应用于主从式数据库集群中主数据库切换,所述方法包括:a)从所述数据库集群中选择一从数据库以作为新的主数据库;b)建立所述新的主数据库与一其他从数据库的第一连接;c)将所述新的主数据库与所述其他从数据库的数据进行比对,以将所述其他从数据库中的新数据同步到所述新的主数据库中;d)重复步骤b)和c),直至所述新的主数据库与所有其他从数据库都完成数据比对;以及,e)建立所述新的主数据库与所有其他从数据库之间的第二连接,以将所述新的主数据库的数据同步至所有其他从数据库。B10.根据B9所述的方法,其中,所述步骤c)进一步包括:f)在完成所述新的主数据库与所述其他从数据库的数据比对之后,断开两者之间的所述第一连接。B11.根据B9或B10所述的方法,其中,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位。B12.根据B9-B11中任一项所述的方法,其中,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。
本发明实施例提供了C13.一种数据补全装置,应用于主从式数据库集群中主数据库切换,所述装置包括:第一主库选取模块,适于从所述数据库集群中选择一从数据库以作为新的主数据库;第一连接建立模块,适于依次建立所述新的主数据库与所有其他从数据库的第一连接;第一同步模块,适于将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中;第一补全确认模块,适于当完成对所述所有其他从数据库的数据比对时,结束对所述新的主数据库的数据补全。C14.根据C13所述的装置,其中,所述第一主库选取模块进一步包括:列表获取单元,适于在所述依次建立新的主数据库与所有从数据库的连接之前,获取所述数据库集群的所有从数据库的列表;主库筛选单元,适于在所述列表记录的所述所有从数据库中,筛选得到一符合预设条件的从数据库作为新的主数据库。C15.根据C14所述的装置,其中,所述预定条件包括以下至少之一:从数据库状态标识为alive;以及,从数据库延迟事务数量小于预设数量。C16.根据C13-C15中任一项所述的装置,其中,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位。C17.根据C13-C16中任一项所述的装置,其中,所述第一同步模块进一步适于:在完成所述新的主数据库与一其他从数据库的数据比对之后,断开两者之间的所述第一连接。C18.根据C13-C17中任一项所述的装置,其中,所述装置进一步包括:第二连接建立模块,适于在结束对所述新的主数据库的数据补全之后,依次建立所述新的主数据库与所有其他从数据库之间的第二连接;第二同步模块,适于将所述新的主数据库的数据同步至所有其他从数据库。C19.根据C18所述的装置,其中,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。C20.根据C13-C19中任一项所述的装置,其中,所述数据库集群为MYSQL数据库集群。
本发明实施例提供了D21.一种数据补全装置,应用于主从式数据库集群中主数据库切换,所述装置包括:第二主库选取模块,适于从所述数据库集群中选择一从数据库以作为新的主数据库;第三连接建立模块,适于建立所述新的主数据库与一其他从数据库的第一连接;第三同步模块,适于将所述新的主数据库与所述其他从数据库的数据进行比对,以将所述其他从数据库中的新数据同步到所述新的主数据库中;第二补全确认模块,适于重复第三连接建立模块与所述第三同步模块执行的操作,直至所述新的主数据库与所有其他从数据库都完成数据比对;第四连接建立模块,适于建立所述新的主数据库与所有其他从数据库之间的第二连接,以将所述新的主数据库的数据同步至所有其他从数据库。D22.根据D21所述的装置,其中,所述第三同步模块进一步适于:在完成所述新的主数据库与所述其他从数据库的数据比对之后,断开两者之间的所述第一连接。D23.根据D21或D22所述的装置,其中,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位。D24.根据D21-D23中任一项所述的装置,其中,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。

Claims (14)

1.一种数据补全方法,应用于主从式数据库集群中主数据库切换,所述方法包括:
从所述数据库集群中选择一从数据库以作为新的主数据库;
依次建立所述新的主数据库与所有其他从数据库的第一连接;其中,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位;
将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中;以及
当完成对所述所有其他从数据库的数据比对时,结束对所述新的主数据库的数据补全;
在结束对所述新的主数据库的数据补全之后,依次建立所述新的主数据库与所有其他从数据库之间的第二连接;其中,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位;
将所述新的主数据库的数据同步至所有其他从数据库。
2.根据权利要求1所述的方法,其中,所述从所述数据库集群中选择一从数据库以作为新的主数据库的步骤进一步包括:
在所述依次建立新的主数据库与所有从数据库的连接之前,获取所述数据库集群的所有从数据库的列表;以及
在所述列表记录的所述所有从数据库中,筛选得到一符合预设条件的从数据库作为新的主数据库。
3.根据权利要求2所述的方法,其中,所述预设 条件包括以下至少之一:
从数据库状态标识为alive;以及
从数据库延迟事务数量小于预设数量。
4.根据权利要求1-3中任一项所述的方法,其中,所述将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中的步骤进一步包括:在完成所述新的主数据库与一其他从数据库的数据比对之后,断开两者之间的所述第一连接。
5.根据权利要求1-3中任一项所述的方法,其中,所述数据库集群为MYSQL数据库集群。
6.一种数据补全方法,应用于主从式数据库集群中主数据库切换,所述方法包括:
a)从所述数据库集群中选择一从数据库以作为新的主数据库;
b)建立所述新的主数据库与一其他从数据库的第一连接;其中,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位;
c)将所述新的主数据库与所述其他从数据库的数据进行比对,以将所述其他从数据库中的新数据同步到所述新的主数据库中;
d)重复步骤b)和c),直至所述新的主数据库与所有其他从数据库都完成数据比对;以及
e)建立所述新的主数据库与所有其他从数据库之间的第二连接,以将所述新的主数据库的数据同步至所有其他从数据库;所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。
7.根据权利要求6所述的方法,其中,所述步骤c)进一步包括:
f)在完成所述新的主数据库与所述其他从数据库的数据比对之后,断开两者之间的所述第一连接。
8.一种数据补全装置,应用于主从式数据库集群中主数据库切换,所述装置包括:
第一主库选取模块,适于从所述数据库集群中选择一从数据库以作为新的主数据库;
第一连接建立模块,适于依次建立所述新的主数据库与所有其他从数据库的第一连接;其中,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位;
第一同步模块,适于将所述新的主数据库与所有其他从数据库的数据分别进行比对,以将所有其他从数据库中的新数据同步到所述新的主数据库中;
第一补全确认模块,适于当完成对所述所有其他从数据库的数据比对时,结束对所述新的主数据库的数据补全;
第二连接建立模块,适于在结束对所述新的主数据库的数据补全之后,依次建立所述新的主数据库与所有其他从数据库之间的第二连接;其中,所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位;
第二同步模块,适于将所述新的主数据库的数据同步至所有其他从数据库。
9.根据权利要求8所述的装置,其中,所述第一主库选取模块进一步包括:列表获取单元,适于在所述依次建立新的主数据库与所有从数据库的连接之前,获取所述数据库集群的所有从数据库的列表;主库筛选单元,适于在所述列表记录的所述所有从数据库中,筛选得到一符合预设条件的从数据库作为新的主数据库。
10.根据权利要求9所述的装置,其中,所述预设 条件包括以下至少之一:从数据库状态标识为alive;以及,从数据库延迟事务数量小于预设数量。
11.根据权利要求8-10中任一项所述的装置,其中,所述第一同步模块进一步适于:在完成所述新的主数据库与一其他从数据库的数据比对之后,断开两者之间的所述第一连接。
12.根据权利要求8-10中任一项所述的装置,其中,所述数据库集群为MYSQL数据库集群。
13.一种数据补全装置,应用于主从式数据库集群中主数据库切换,所述装置包括:
第二主库选取模块,适于从所述数据库集群中选择一从数据库以作为新的主数据库;
第三连接建立模块,适于建立所述新的主数据库与一其他从数据库的第一连接;其中,所述第一连接为主从式连接,且所述其他从数据库与所述新的主数据库分别具有主、从地位;
第三同步模块,适于将所述新的主数据库与所述其他从数据库的数据进行比对,以将所述其他从数据库中的新数据同步到所述新的主数据库中;
第二补全确认模块,适于重复第三连接建立模块与所述第三同步模块执行的操作,直至所述新的主数据库与所有其他从数据库都完成数据比对;
第四连接建立模块,适于建立所述新的主数据库与所有其他从数据库之间的第二连接,以将所述新的主数据库的数据同步至所有其他从数据库;所述第二连接为主从式连接,且所述新的主数据库与所述其他从数据库分别具有主、从的地位。
14.根据权利要求13所述的装置,其中,所述第三同步模块进一步适于:在完成所述新的主数据库与所述其他从数据库的数据比对之后,断开两者之间的所述第一连接。
CN201410818146.7A 2014-12-24 2014-12-24 数据补全方法和装置 Expired - Fee Related CN104537046B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410818146.7A CN104537046B (zh) 2014-12-24 2014-12-24 数据补全方法和装置
PCT/CN2015/094153 WO2016101718A1 (zh) 2014-12-24 2015-11-09 数据补全方法和装置
US15/539,966 US10045397B2 (en) 2014-12-24 2015-11-09 Data complementing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410818146.7A CN104537046B (zh) 2014-12-24 2014-12-24 数据补全方法和装置

Publications (2)

Publication Number Publication Date
CN104537046A CN104537046A (zh) 2015-04-22
CN104537046B true CN104537046B (zh) 2018-09-11

Family

ID=52852574

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410818146.7A Expired - Fee Related CN104537046B (zh) 2014-12-24 2014-12-24 数据补全方法和装置

Country Status (3)

Country Link
US (1) US10045397B2 (zh)
CN (1) CN104537046B (zh)
WO (1) WO2016101718A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104537046B (zh) * 2014-12-24 2018-09-11 北京奇虎科技有限公司 数据补全方法和装置
CN104866556B (zh) * 2015-05-15 2019-07-23 北京奇虎科技有限公司 数据库的故障处理方法、装置和数据库系统
CN106571940A (zh) * 2015-10-08 2017-04-19 中国移动通信集团广东有限公司 一种融合网管数据与资源数据的方法和装置
CN106909568A (zh) * 2015-12-23 2017-06-30 北京奇虎科技有限公司 一种数据库集群主数据库的切换方法及装置
CN106156318B (zh) * 2016-07-05 2022-08-16 武汉斗鱼网络科技有限公司 一种实现多节点数据库高可用的系统及方法
CN106156330A (zh) * 2016-07-06 2016-11-23 北京金山安全管理系统技术有限公司 一种数据库适配方法及数据库适配器
CN106254100B (zh) * 2016-07-27 2019-04-16 腾讯科技(深圳)有限公司 一种数据容灾方法、装置和系统
CN107016027A (zh) * 2016-12-08 2017-08-04 阿里巴巴集团控股有限公司 实现业务信息快速搜索的方法和装置
CN108243209A (zh) * 2016-12-23 2018-07-03 深圳市优朋普乐传媒发展有限公司 一种数据同步方法及装置
CN106713487B (zh) * 2017-01-16 2020-10-09 腾讯科技(深圳)有限公司 数据的同步方法和装置
CN107391758B (zh) * 2017-08-24 2020-08-04 阿里巴巴集团控股有限公司 数据库切换方法、装置及设备
CN108900572B (zh) * 2018-05-31 2022-08-09 康键信息技术(深圳)有限公司 主数据库域名切换控制方法、计算机设备和存储介质
CN109032849B (zh) * 2018-08-30 2021-03-23 百度在线网络技术(北京)有限公司 热备份系统、热备份方法和计算机设备
CN110413685B (zh) * 2019-04-12 2024-03-12 财付通支付科技有限公司 数据库服务切换方法、装置、可读存储介质和计算机设备
CN110795287B (zh) * 2019-10-30 2024-04-26 深圳前海环融联易信息科技服务有限公司 数据恢复方法、系统、电子设备及计算机存储介质
CN112231385B (zh) * 2020-12-11 2021-06-01 湖南新云网科技有限公司 一种数据收集方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1024441A2 (en) * 1999-01-27 2000-08-02 Phone.Com Inc. Method and apparatus for synchronizing multiple databases
CN101207512A (zh) * 2006-12-22 2008-06-25 中兴通讯股份有限公司 一种数据库系统冗灾备份和切换方法
CN102945195A (zh) * 2012-11-26 2013-02-27 国电南瑞科技股份有限公司 一种基于SQLite数据库的主备冗余复制方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523110B2 (en) * 2005-03-03 2009-04-21 Gravic, Inc. High availability designated winner data replication
JP2010277348A (ja) 2009-05-28 2010-12-09 Nippon Telegr & Teleph Corp <Ntt> マスタースレーブ構成をもつデータベースを更新するデータベース更新方法、データベース更新システム、データベース更新装置、およびデータベース更新プログラム
US8572031B2 (en) * 2010-12-23 2013-10-29 Mongodb, Inc. Method and apparatus for maintaining replica sets
CN102761528A (zh) 2011-04-28 2012-10-31 中兴通讯股份有限公司 数据管理系统及方法
CN103020243A (zh) 2012-12-18 2013-04-03 新浪网技术(中国)有限公司 一种数据库主从复制结构更换方法及装置
CN104537046B (zh) 2014-12-24 2018-09-11 北京奇虎科技有限公司 数据补全方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1024441A2 (en) * 1999-01-27 2000-08-02 Phone.Com Inc. Method and apparatus for synchronizing multiple databases
CN101207512A (zh) * 2006-12-22 2008-06-25 中兴通讯股份有限公司 一种数据库系统冗灾备份和切换方法
CN102945195A (zh) * 2012-11-26 2013-02-27 国电南瑞科技股份有限公司 一种基于SQLite数据库的主备冗余复制方法

Also Published As

Publication number Publication date
CN104537046A (zh) 2015-04-22
US10045397B2 (en) 2018-08-07
WO2016101718A1 (zh) 2016-06-30
US20170359853A1 (en) 2017-12-14

Similar Documents

Publication Publication Date Title
CN104537046B (zh) 数据补全方法和装置
CN111092933A (zh) 用于微服务架构的业务流程管理方法、系统、介质及电子设备
CN106776894B (zh) 日志数据库系统和同步方法
US9648059B2 (en) System and methods for multi-user CAx editing conflict management
RU2767149C2 (ru) Способ и конфигурация для автоматизированной системы испытания
CN105701159B (zh) 一种数据同步装置和方法
CN104866556B (zh) 数据库的故障处理方法、装置和数据库系统
CN107430603A (zh) 大规模并行处理数据库的系统和方法
CN104516966A (zh) 一种数据库集群的高可用解决方法和装置
CN106598992A (zh) 数据库的操作方法及装置
US20160098494A1 (en) Integration of analysis with multi-user cad
Bahubalendruni et al. A hybrid conjugated method for assembly sequence generation and explode view generation
CN103975347A (zh) 管理运行的管理系统及方法
CN109508287A (zh) 页面调试方法及终端设备
CN106909568A (zh) 一种数据库集群主数据库的切换方法及装置
CN106611062A (zh) 数据库更新方法及装置
CN106605217A (zh) 使用跨越故障转移集群中的数据存储库的同步复制的应用透明持续可用性
CN114780301A (zh) 支持多云生产环境的容灾方法及系统
CN109885612A (zh) 区块链智能合约的同步生效方法及装置
CN105930178A (zh) 一种可配置的参数动态装载方法及系统
CN102339299B (zh) 信息处理装置和信息处理方法
CN108205588A (zh) 基于主从结构的数据同步方法及装置
CN107528724A (zh) 一种节点集群的优化处理方法及装置
KR20160049568A (ko) 소스코드 비교 및 관리 시스템 및 방법
CN111538666B (zh) 批量收集测试结果的方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180911

Termination date: 20211224