CN103500229B - 一种数据库同步方法和数据库系统 - Google Patents
一种数据库同步方法和数据库系统 Download PDFInfo
- Publication number
- CN103500229B CN103500229B CN201310507349.XA CN201310507349A CN103500229B CN 103500229 B CN103500229 B CN 103500229B CN 201310507349 A CN201310507349 A CN 201310507349A CN 103500229 B CN103500229 B CN 103500229B
- Authority
- CN
- China
- Prior art keywords
- data
- thread
- master
- subregion
- log 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 229910002056 binary alloy Inorganic materials 0.000 claims abstract description 13
- 230000008859 change Effects 0.000 claims description 110
- 238000005192 partition Methods 0.000 claims description 53
- 230000005540 biological transmission Effects 0.000 claims description 22
- 238000003780 insertion Methods 0.000 claims description 12
- 230000037431 insertion Effects 0.000 claims description 12
- 238000012544 monitoring process Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 6
- 230000008569 process Effects 0.000 abstract description 4
- 230000003111 delayed effect Effects 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 239000004594 Masterbatch (MB) Substances 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000002674 ointment Substances 0.000 description 1
- 238000012546 transfer Methods 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/278—Data partitioning, e.g. horizontal or vertical partitioning
-
- 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
Abstract
本发明公开了一种数据库同步方法以及系统,包括:将主数据库和从数据库划分为多个分区,并为每个主、从数据分区设置一主、从二进制日志文件。当主数据分区发生数据更改时,将此数据更改记录到主二进制日志文件中,并将数据更改记录发送到从数据库,将此数据更改记录到从二进制日志文件中,并在从数据库的从数据分区中执行数据更改。本发明的方法和数据库系统,对数据库进行分区并对应数据库分区设置二进制日志文件,并且采用多线程并发处理二进制日志文件同步,解决了二进制日志文件同步过程中从数据库端回放慢及从数据库端系统资源利用率低的问题。另外,将主数据库的数据批量方式到从数据库端,尽可能减少从数据库端丢失数据。
Description
技术领域
本发明涉及数据库技术领域,尤其涉及一种数据库同步方法和数据库系统。
背景技术
在数据库的应用中,对于访问量巨大的系统一般采用逐主Master-从Slave模式,通过这种方法,可以降低数据库的压力。二进制日志Binlog在数据库系统常被用于记录系统当前已经执行过的DDL和DML(除了数据查询语句)语句等内容。这些语句以事件的形式实时地备份到binlog中,反映了数据库中数据的更改。Binlog在数据库系统中主要有两个作用:binlog作为数据库系统数据的实时备份,当数据库系统发生异常时,可以被用于数据恢复;binlog还用于数据库系统集群的主从数据复制,主节点把它的binlog传递给从节点来达到主从数据一致的目的。
目前,在大多数的数据库系统的同步采用每个节点对应一个binlog文件来实现。例如,master节点上有一个binlog,slave节点上也有一个binlog。Master节点将binlog内容发送到slave端,slave端接收数据后将binlog内容解析,先执行数据存入节点上的数据库,然后将操作日志记录到binlog中。并且,在数据库同步的过程中Slave节点通常采用单线程同步binlog,master节点发送速度远快于slave节点处理速度慢,会产生slave节点数据滞后的情况,且单线程不能充分利用系统资源,常出现slave节点数据严重滞后时,系统资源占用率却较低的情况。当slave节点数据发生滞后的情况下,如果master节点出现异常,则master节点未发送到slave节点的数据将丢失,造成数据同步的失败。
发明内容
有鉴于此,本发明要解决的一个技术问题是提供一种数据库同步方法,设置数据库分区并设置对应的二进制日志文件,进行主从数据库的同步。
一种数据库同步方法,其包括:将主数据库划分为多个主数据分区,将从数据库划分为多个从数据分区;为每个主数据分区设置一主二进制日志文件并为每个从数据分区设置一从二进制日志文件;当所述主数据分区发生数据更改时,将此数据更改记录到与此主数据分区对应的主二进制日志文件中,并将所述主数据分区的数据更改记录发送到所述从数据库;当接收到所述主数据分区的数据更改记录时,将此数据更改记录到从二进制日志文件中,并在与此从二进制日志文件对应的所述从数据库的从数据分区中执行数据更改。
根据本发明的方法的一个实施例,进一步的,所述主数据库与所述从数据库的分区划分相同,并且,所述多个主数据分区与所述多个从数据分区一一对应。
根据本发明的方法的一个实施例,进一步的,对于每个主数据分区启动至少一个第一工作线程;所述第一工作线程执行与其对应的主数据分区的数据更改,并将数据更改记录到与此主数据分区对应的主二进制日志文件中。
根据本发明的方法的一个实施例,进一步的,对于每个主二进制日志文件启动至少一个发送线程;所述发送线程监控与其对应的主二进制日志文件;当此主二进制日志文件的大小发生变化时,所述发送线程读取此主二进制日志文件中新插入的数据更改记录,并将所述新插入的数据更改记录缓存在缓存队列中;当缓存队列的长度到达设定的阈值时,所述发送线程将所述缓存队列中的数据更改记录发送到所述从数据库。
根据本发明的方法的一个实施例,进一步的,对于每个从数据分区启动至少一个接收线程和至少一个第二工作线程;
当所述接收线程接收到与其对应的从数据分区的数据更改记录时,将此数据更改记录传递到所述第二工作线程;所述第二工作线程将此数据更改记录到与所述第二工作线程对应的从数据分区的从二进制日志文件中,并执行与所述第二工作线程对应的从数据分区的数据更改。
根据本发明的方法的一个实施例,进一步的,所述发送线程和所述接收线程采用同步或异步方式传递所述数据更改记录;所述数据更改记录包括执行DROP、CREATE、ALTER、GRANT、REVOKE、TRUNCATE、UPDATE、INSERT、DELETE数据库命令的记录。
本发明要解决的另一个技术问题是提供一种数据库同步系统,能够设置与数据库分区对应的二进制日志文件,进行主从数据库的同步。
一种数据库系统,包括:主数据库节点和从数据库节点;其中,在所述主数据库节点中运行主数据库,在所述从数据库节点中运行从数据库;所述主数据库划分为多个主数据分区,在主数据库节点中对应于每个主数据分区设置主二进制日志文件;所述从数据库划分为多个从数据分区,在主数据库节点中对应于每个从数据分区设置从二进制日志文件;当所述主数据分区发生数据更改时,所述主数据库将此数据更改记录到与此主数据分区对应的主二进制日志文件中,并将所述主数据分区的数据更改记录发送到所述从数据库;当接收到所述主数据分区的数据更改记录时,所述从数据库将此数据更改记录到从二进制日志文件中,并在与此从二进制日志文件对应的所述从数据库的从数据分区中执行数据更改。
根据本发明的系统的一个实施例,进一步的,所述主数据库与所述从数据库的分区划分相同,并且,所述多个主数据分区与所述多个从数据分区一一对应,并设置编号;在主数据库节点中对于每个主数据分区启动至少一个第一工作线程;所述第一工作线程执行与其对应的主数据分区的数据更改,并将数据更改记录到与此主数据分区对应的主二进制日志文件中。
根据本发明的系统的一个实施例,进一步的,在主数据库节点中对于每个主二进制日志文件启动至少一个发送线程;所述发送线程监控与其对应的主二进制日志文件;当此主二进制日志文件的大小发生变化时,所述发送线程读取此主二进制日志文件中新插入的数据更改记录,并将所述新插入的数据更改记录缓存在缓存队列中;当缓存队列的长度到达设定的阈值时,所述发送线程将所述缓存队列中的数据更改记录发送到所述从数据库。
根据本发明的系统的一个实施例,进一步的,在从数据库节点中对于每个从数据分区启动至少一个接收线程和至少一个第二工作线程;当所述接收线程接收到与其对应的从数据分区的数据更改记录时,将此数据更改记录传递到所述第二工作线程;所述第二工作线程将此数据更改记录到与所述第二工作线程对应的从数据分区的从二进制日志文件中,并执行与所述第二工作线程对应的从数据分区的数据更改;所述发送线程和所述接收线程采用同步或异步方式传递所述数据更改记录;所述数据更改记录包括执行DROP、CREATE、ALTER、GRANT、REVOKE、TRUNCATE、UPDATE、INSERT、DELETE数据库命令的记录。
本发明的数据库同步方法和数据库系统,对数据库进行分区并对应数据库分区设置二进制日志文件,并且对二进制日志文件的同步采用多线程并发处理,解决了二进制日志文件同步过程中从数据库端回放慢及从数据库端系统资源利用率低的问题。另外,数据发送采用批量发送的方法,将主数据库的数据批量方式到从数据库端,能够尽量避免从数据库端丢失数据。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为根据本发明的数据库同步方法的一个实施例的流程图;
图2为根据本发明的数据库系统的一个实施例的示意图;
图3为根据本发明的数据库同步方法一个实施例中发送、接收数据以及更改信息的流程图。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明对数据库进行划分,将一个数据库划分为若干个分区partition,每个partiton对应一个二进制日志文件binlog进行数据的同步。对数据库进行分区可以根据需要进行设置,例如,可以对表进行横向分割进行分区。本发明的数据库的同步方法的一个实施例如图1所示:
步骤101,将主数据库划分为多个主数据分区,将从数据库划分为多个从数据分区。
步骤102,为每个主数据分区设置一主二进制日志文件并为每个从数据分区设置一从二进制日志文件。
步骤103,当主数据分区发生数据更改时,将此数据更改记录到与此主数据分区对应的主二进制日志文件中,并将主数据分区的数据更改记录发送到从数据库。
步骤104,当接收到主数据分区的数据更改记录时,将此数据更改记录到从二进制日志文件中,并在与此从二进制日志文件对应的从数据库的从数据分区中执行数据更改。
根据本发明的一个实施例,主数据库与从数据库可以为多种数据库,例如oracle、sybase以及mysql等。主数据库与从数据库的分区划分可以相同也可以不同。当主数据库与从数据库的分区划分相同时,多个主数据分区与多个从数据分区可以设置为一一对应的形式。
根据本发明的一个实施例,对于每个主数据分区启动至少一个第一工作线程。第一工作线程执行与其对应的主数据分区的数据更改,并将数据更改记录到与此主数据分区对应的主二进制日志文件中。对于每个主二进制日志文件也启动至少一个发送线程,发送线程监控与其对应的主二进制日志文件,根据系统运行以及对数据处理的情况,可以采用单线程或多线程来完成。
本发明中的“第一”、“第二”为描述上加以区别,并没有特殊的含义。
发送线程可以采用多种方式对主二进制日志文件变化进行监控,例如,可以监控主二进制日志文件的大小是否发生变化,或者,可以设置系统变量,当将数据更改记录到与此主数据分区对应的主二进制日志文件时,改变此系统变量的值,用以表明文件写入了新的记录。
当此主二进制日志文件发生变化时,发送线程读取此主二进制日志文件中新插入的数据更改记录,并将新插入的数据更改记录缓存在缓存队列中。当缓存队列的长度到达设定的阈值时,发送线程将缓存队列中的数据更改记录发送到从数据库。
通过缓存队列能够实现对数据的批量发送。在实现批量发送的具体实现中,也可以采用其他的方式,例如,可以将需要发送的数据保存在一个内存区或硬盘上的文件中,当需要发送时,发送线程将内存区或硬盘上的文件中的数据进行批量发送。
根据本发明的一个实施例,对于每个从数据分区启动至少一个接收线程和至少一个第二工作线程。当接收线程接收到与其对应的从数据分区的数据更改记录时,将此数据更改记录传递到第二工作线程。
第二工作线程将此数据更改记录到与第二工作线程对应的从数据分区的从二进制日志文件中,并执行与第二工作线程对应的从数据分区的数据更改。根据系统运行以及对数据处理的情况,可以采用单线程或多线程来完成。
本发明的方法对数据库进行分区,对应数据库分区设置二进制日志文件,并且对二进制日志文件的同步采用多线程并发处理,解决了二进制日志文件同步过程中slave端回放慢及slave端系统资源利用率低的问题。另外,数据发送采用批量发送的方法,将master的数据批量方式到slave,尽可能地避免slave端丢失数据。
根据本发明的一个实施例,DDL(Data Definition Language,数据定义语言)用于定义数据库的所有特性和属性,包括命令:DROP、CREATE、ALTER、GRANT、REVOKE、TRUNCATE。DML(data manipulation language,数据操控语言)包括SELECT、UPDATE、INSERT、DELETE命令。数据更改记录是指数据库执行包括上述的DDL和DML除去SELECT的命令的执行结果。
对二进制日志文件的同步采用多线程,发送线程和接收线程采用同步或异步方式传递数据更改记录,即发送线程和接收线程可以采用信号量、Scoket套接字、共享内存或系统消息等方式完成线程间的数据传递。
图2为根据本发明的数据库系统的一个实施例的示意图。如图所示:数据库系统包括主数据库节点21和从数据库节点22。数据库系统可以根据具体应用的需求设置多个主数据库节点和多个从数据库节点,可以是一一对应的关系,也可以是一对多、多对一的关系。Master为主节点,Slave为从节点。
在主数据库节点21中运行主数据库211,在从数据库节点22中运行从数据库221;运行的数据库可以为多种,例如,ORACLE、SYBASE、MYSQL等。
主数据库211划分为多个主数据分区一、二….N,在主数据库节点21中对应于每个主数据分区设置主二进制日志文件一、二….N。从数据库221划分为多个从数据分区一、二….N,在从数据库节点21中对应于每个从数据分区设置从二进制日志文件一、二….N。
当主数据分区一212发生数据更改时,主数据库211将此数据更改记录到与此主数据分区对应的主二进制日志文件一231中,并将主数据分区的数据更改记录发送到从数据库22。
当接收到主数据分区一212的数据更改记录时,在从数据库的从数据分区一223中执行数据更改,从数据库22将此数据更改记录到与此从数据分区一223对应的从二进制日志文件一241中。
根据本发明的一个实施例,主数据库211与从数据库221的分区划分相同,多个主数据分区一、二….N与多个从数据分区一、二….N一一对应,并设置编号。
在主数据库节点21中对于每个主数据分区启动至少一个第一工作线程;例如,第一工作线程一251执行与其对应的主数据分区一212的数据更改,并将数据更改记录到与此主数据分区一212对应的主二进制日志文件一231中。根据系统和数据处理的实际需要,第一工作线程一251可以采用单线程或多线程技术实现功能。
根据本发明的一个实施例,在主数据库节点21中对于每个主二进制日志文件启动至少一个发送线程。例如,发送线程一261监控与其对应的主二进制日志文件一231。
当此主二进制日志文件一231的大小发生变化时,发送线程一261读取此主二进制日志文件一231中新插入的数据更改记录,并将新插入的数据更改记录缓存在缓存队列中。当缓存队列的长度到达设定的阈值时,发送线程一261将缓存队列中的数据更改记录发送到从数据库。
根据本发明的一个实施例,在从数据库节点22中对于每个从数据分区启动至少一个接收线程和至少一个第二工作线程。例如:当接收线程一281接收到与其对应的从数据分区一223的数据更改记录时,将此数据更改记录传递到第二工作线程一271。
第二工作线程一271将此数据更改记录到与第二工作线程一271对应的从数据分区一223的从二进制日志文件一241中,并执行与第二工作线程一271对应的从数据分区一223的数据更改;发送线程和接收线程采用同步或异步方式传递数据更改记录。
本发明的数据库系统,可以在每个主、从节点上对数据库增加分区支持,使得每个数据库可以被划分为任意个分区partiton,每个分区partiton对应一个二进制日志文件binlog。每个分区partiton至少有一个线程进行数据的读写和二进制日志文件的追加,这样每个数据库就有至少有同分区partition数目一样多的线程并发的完成二进制日志文件的回放。
根据本发明的一个实施例,发送、接收数据以及更改信息的流程如图3所示:
步骤301,Master端有N个二进制日志文件,slave端也有N个二进制日志文件,且它们是以编号一一对应的。Master端启动N个第一工作线程并发执行与其对应的主数据分区的数据更改。
步骤302,第一工作线程将数据更改记录到与此主数据分区对应的主二进制日志文件中。
步骤303,Master端启动N个发送线程。当此主二进制日志文件的大小发生变化时,发送线程读取此主二进制日志文件中新插入的数据更改记录。
步骤304,发送线程将新插入的数据更改记录缓存在缓存队列中;当缓存队列的长度到达设定的阈值时,发送线程将缓存队列中的数据更改记录批量发送到salve端的接收线程。
步骤305,Slave端启动N个接收线程和第二工作线程。接收线程接收到与其对应的从数据分区的数据更改记录时,将此数据更改记录传递到对应的第二工作线程。
步骤306,第二工作线程将此数据更改记录到与第二工作线程对应的从数据分区的从二进制日志文件中。
步骤307,第二工作线程执行与第二工作线程对应的从数据分区的数据更改。
本发明采用多线程并发处理主从之间的二进制日志文件同步,显著的提高了slave回放二进制日志文件的速度,提高了slave端系统资源的利用率。Master批量发送数据,slave端批量接收和处理数据,能够减少slave端丢失数据。
可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (9)
1.一种数据库同步方法,其包括:
将主数据库划分为多个主数据分区,将从数据库划分为多个从数据分区;
为每个主数据分区设置一主二进制日志文件并为每个从数据分区设置一从二进制日志文件;
当所述主数据分区发生数据更改时,将此数据更改记录到与此主数据分区对应的主二进制日志文件中,并将所述主数据分区的数据更改记录发送到所述从数据库;
对于每个从数据分区启动至少一个接收线程和至少一个第二工作线程;当所述接收线程接收到与其对应的从数据分区的数据更改记录时,将此数据更改记录传递到所述第二工作线程;所述第二工作线程将此数据更改记录到与所述第二工作线程对应的从数据分区的从二进制日志文件中,并执行与所述第二工作线程对应的从数据分区的数据更改。
2.如权利要求1所述的方法,其中:
所述主数据库与所述从数据库的分区划分相同,并且,所述多个主数据分区与所述多个从数据分区一一对应。
3.如权利要求2所述的方法,其中:
对于每个主数据分区启动至少一个第一工作线程;
所述第一工作线程执行与其对应的主数据分区的数据更改,并将数据更改记录到与此主数据分区对应的主二进制日志文件中。
4.如权利要求2所述的方法,其中:
对于每个主二进制日志文件启动至少一个发送线程;所述发送线程监控与其对应的主二进制日志文件;
当此主二进制日志文件的大小发生变化时,所述发送线程读取此主二进制日志文件中新插入的数据更改记录,并将所述新插入的数据更改记录缓存在缓存队列中;
当缓存队列的长度到达设定的阈值时,所述发送线程将所述缓存队列中的数据更改记录发送到所述从数据库。
5.如权利要求4所述的方法,其中:
所述发送线程和所述接收线程采用同步或异步方式传递所述数据更改记录;
所述数据更改记录包括执行DROP、CREATE、ALTER、GRANT、REVOKE、TRUNCATE、UPDATE、INSERT、DELETE数据库命令的记录。
6.一种数据库系统,其特征在于,包括:
主数据库节点和从数据库节点;其中,在所述主数据库节点中运行主数据库,在所述从数据库节点中运行从数据库;
所述主数据库划分为多个主数据分区,在主数据库节点中对应于每个主数据分区设置主二进制日志文件;所述从数据库划分为多个从数据分区,在主数据库节点中对应于每个从数据分区设置从二进制日志文件;
当所述主数据分区发生数据更改时,所述主数据库将此数据更改记录到与此主数据分区对应的主二进制日志文件中,并将所述主数据分区的数据更改记录发送到所述从数据库;
在从数据库节点中对于每个从数据分区启动至少一个接收线程和至少一个第二工作线程;当所述接收线程接收到与其对应的从数据分区的数据更改记录时,将此数据更改记录传递到所述第二工作线程;所述第二工作线程将此数据更改记录到与所述第二工作线程对应的从数据分区的从二进制日志文件中,并执行与所述第二工作线程对应的从数据分区的数据更改。
7.如权利要求6所述的系统,其特征在于:
所述主数据库与所述从数据库的分区划分相同,并且,所述多个主数据分区与所述多个从数据分区一一对应,并设置编号;
在主数据库节点中对于每个主数据分区启动至少一个第一工作线程;所述第一工作线程执行与其对应的主数据分区的数据更改,并将数据更改记录到与此主数据分区对应的主二进制日志文件中。
8.如权利要求7所述的系统,其特征在于:
在主数据库节点中对于每个主二进制日志文件启动至少一个发送线程;所述发送线程监控与其对应的主二进制日志文件;
当此主二进制日志文件的大小发生变化时,所述发送线程读取此主二进制日志文件中新插入的数据更改记录,并将所述新插入的数据更改记录缓存在缓存队列中;
当缓存队列的长度到达设定的阈值时,所述发送线程将所述缓存队列中的数据更改记录发送到所述从数据库。
9.如权利要求8所述的系统,其特征在于:
所述发送线程和所述接收线程采用同步或异步方式传递所述数据更改记录;
所述数据更改记录包括执行DROP、CREATE、ALTER、GRANT、REVOKE、TRUNCATE、UPDATE、INSERT、DELETE数据库命令的记录。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310507349.XA CN103500229B (zh) | 2013-10-24 | 2013-10-24 | 一种数据库同步方法和数据库系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310507349.XA CN103500229B (zh) | 2013-10-24 | 2013-10-24 | 一种数据库同步方法和数据库系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103500229A CN103500229A (zh) | 2014-01-08 |
CN103500229B true CN103500229B (zh) | 2017-04-19 |
Family
ID=49865440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310507349.XA Active CN103500229B (zh) | 2013-10-24 | 2013-10-24 | 一种数据库同步方法和数据库系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103500229B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103763368B (zh) * | 2014-01-20 | 2016-07-06 | 浪潮电子信息产业股份有限公司 | 一种跨数据中心的数据同步方法 |
CN104199881B (zh) * | 2014-08-21 | 2018-07-06 | 广州华多网络科技有限公司 | 数据库集群、数据查询方法、数据同步方法和装置 |
CN104346479A (zh) * | 2014-11-26 | 2015-02-11 | 北京奇虎科技有限公司 | 一种数据库同步方法及装置 |
CN105989123A (zh) * | 2015-02-13 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置和系统 |
CN104699541B (zh) * | 2015-03-30 | 2018-07-10 | 北京奇虎科技有限公司 | 同步数据的方法、装置、数据传输组件及系统 |
CN106156076B (zh) * | 2015-03-31 | 2019-09-06 | 阿里巴巴集团控股有限公司 | 数据处理的方法和系统 |
CN104731956B (zh) * | 2015-04-02 | 2019-07-23 | 北京奇虎科技有限公司 | 同步数据的方法、系统及相关数据库 |
CN105069059A (zh) * | 2015-07-28 | 2015-11-18 | 小米科技有限责任公司 | 数据库同步方法及装置 |
CN106815275B (zh) * | 2015-12-02 | 2020-11-27 | 阿里巴巴集团控股有限公司 | 一种通过备用数据库实现主备数据库同步的方法与设备 |
CN105512266A (zh) * | 2015-12-03 | 2016-04-20 | 曙光信息产业(北京)有限公司 | 一种实现分布式数据库操作一致性的方法及装置 |
CN105930339B (zh) * | 2016-03-31 | 2019-05-31 | 北京奇虎科技有限公司 | 提高消息传输可靠性的方法和系统 |
CN107644035B (zh) * | 2016-07-21 | 2022-07-22 | 百度在线网络技术(北京)有限公司 | 一种数据库系统及其部署方法 |
CN107995242A (zh) * | 2016-10-27 | 2018-05-04 | 北京京东尚科信息技术有限公司 | 一种业务处理方法及系统 |
CN108076098B (zh) * | 2016-11-16 | 2021-01-26 | 北京京东尚科信息技术有限公司 | 一种业务处理方法及系统 |
CN108228592B (zh) * | 2016-12-13 | 2021-02-26 | 北京京东尚科信息技术有限公司 | 基于二进制日志的数据归档方法及数据归档装置 |
CN108804463B (zh) * | 2017-05-03 | 2021-07-09 | 杭州海康威视数字技术股份有限公司 | 一种MySQL数据库的数据同步方法、装置及电子设备 |
CN108009261B (zh) * | 2017-12-12 | 2020-12-25 | 北京奇艺世纪科技有限公司 | 一种数据同步方法、装置及电子设备 |
CN108205588B (zh) * | 2017-12-29 | 2021-04-09 | 北京奇虎科技有限公司 | 基于主从结构的数据同步方法及装置 |
CN108183957B (zh) * | 2017-12-29 | 2020-12-18 | 北京奇虎科技有限公司 | 主从同步方法及装置 |
CN108228789B (zh) * | 2017-12-29 | 2021-12-21 | 北京奇虎科技有限公司 | 从节点触发的同步异常恢复方法及装置 |
CN108696595A (zh) * | 2018-05-28 | 2018-10-23 | 郑州云海信息技术有限公司 | 分布式集群数据同步方法、主节点、从节点、系统及介质 |
CN108959657B (zh) * | 2018-08-13 | 2020-12-25 | 北京高途云集教育科技有限公司 | 一种数据变更处理方法及装置 |
CN109684410B (zh) * | 2018-12-24 | 2021-06-15 | 浙江大华技术股份有限公司 | 一种确定主从数据库同步时延的系统、方法及储存介质 |
CN109918178B (zh) * | 2019-03-06 | 2021-04-30 | 恒生电子股份有限公司 | 事务提交方法及相关装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101625655A (zh) * | 2009-08-20 | 2010-01-13 | 华中科技大学 | 一种内存数据库的并行恢复方法 |
CN101751429A (zh) * | 2008-12-12 | 2010-06-23 | 中国移动通信集团山东有限公司 | 一种前后台数据库的同步方法及装置 |
CN102779191A (zh) * | 2012-07-03 | 2012-11-14 | 互动在线(北京)科技有限公司 | 一种MySQL数据库平滑升级的实现系统及实现方法 |
CN102982186A (zh) * | 2012-12-26 | 2013-03-20 | 厦门市美亚柏科信息股份有限公司 | 基于oracle数据库系统的range分区表的维护方法和系统 |
-
2013
- 2013-10-24 CN CN201310507349.XA patent/CN103500229B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751429A (zh) * | 2008-12-12 | 2010-06-23 | 中国移动通信集团山东有限公司 | 一种前后台数据库的同步方法及装置 |
CN101625655A (zh) * | 2009-08-20 | 2010-01-13 | 华中科技大学 | 一种内存数据库的并行恢复方法 |
CN102779191A (zh) * | 2012-07-03 | 2012-11-14 | 互动在线(北京)科技有限公司 | 一种MySQL数据库平滑升级的实现系统及实现方法 |
CN102982186A (zh) * | 2012-12-26 | 2013-03-20 | 厦门市美亚柏科信息股份有限公司 | 基于oracle数据库系统的range分区表的维护方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103500229A (zh) | 2014-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103500229B (zh) | 一种数据库同步方法和数据库系统 | |
US9639588B2 (en) | Operation method and apparatus for data storage system | |
WO2018121120A1 (zh) | 数据的迁移方法及系统 | |
CN110209726A (zh) | 分布式数据库集群系统、数据同步方法及存储介质 | |
CN103605617B (zh) | 一种记录存储数据发生变化的方法及装置 | |
CN105975579B (zh) | 一种内存数据库的主备复制方法及内存数据库系统 | |
CN104699541A (zh) | 同步数据的方法、装置、数据传输组件及系统 | |
WO2015169067A1 (en) | Method, device, and system for peer-to-peer data replication and method, device, and system for master node switching | |
CN109933632B (zh) | 一种数据库的数据迁移方法、装置及设备 | |
US20200293220A1 (en) | Log processing method, and related device and system | |
CN104021200A (zh) | 一种数据库的数据同步方法和装置 | |
CN107438829A (zh) | 分区内存数据集的重做日志记录 | |
CN104317944A (zh) | 一种基于公式的时间戳动态调整并发控制方法 | |
CN103246549A (zh) | 一种数据转存的方法及系统 | |
CN109657000B (zh) | 一种轨道交通综合监控系统的实时数据同步方法及装置 | |
CN115438122A (zh) | 数据异构同步系统 | |
CN115146002A (zh) | 跨数据中心的数据同步方法及装置 | |
CN106951456B (zh) | 一种内存数据库系统及数据处理系统 | |
CN112327600B (zh) | 一种冗余控制器的数据同步方法、冗余控制器及仪控系统 | |
CN106855869A (zh) | 一种实现数据库高可用的方法、装置和系统 | |
CN103853748A (zh) | 一种数据库同步方法 | |
CN105511808A (zh) | 一种数据操作方法、系统及相关装置 | |
CN106649418A (zh) | 一种在驱动中直连分片实现分布式数据库数据导入的高性能方法 | |
WO2017050177A1 (zh) | 一种数据同步方法和装置 | |
CN103685350B (zh) | 存储系统的同步方法及相关的设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220725 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |
|
TR01 | Transfer of patent right |