[发明专利]用于MySQL主从服务器数据一致性检测的方法和装置有效

专利信息
申请号: 201310593859.3 申请日: 2013-11-21
公开(公告)号: CN104657382B 公开(公告)日: 2018-09-14
发明(设计)人: 林晓斌 申请(专利权)人: 阿里巴巴集团控股有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 代理人: 冯德魁
地址: 英属开曼群岛大开*** 国省代码: 开曼群岛;KY
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 用于 mysql 主从 服务器 数据一致性 检测 方法 装置
【说明书】:

本申请公开了一种用于MySQL主从服务器数据一致性检测的方法,包括:设置主、从服务器的默认存储引擎为InnoDB;在主服务器上执行特定的数据库操作,该操作将被写入主服务器的二进制日志binlog文件中;主服务器执行写binlog文件时,判断要写入binlog文件中的当前数据库操作是否是所述特定的数据库操作;若是,导出主服务器数据;从服务器读取上述主服务器所写的binlog文件的内容并执行时,判断当前执行的数据库操作是否是所述特定的数据库操作;若是,导出从服务器数据;判断导出的主、从服务器数据是否相同;若相同,说明主从服务器数据一致。本申请同时提供一种用于MySQL主从服务器数据一致性检测的装置。本申请提供的方法能够一次性、准确地检测出主从服务器数据是否一致。

技术领域

本申请涉及主从服务器数据一致性检测领域,具体涉及一种用于MySQL的主从服务器数据一致性检测的方法;本申请同时提供一种用于MySQL主从服务器数据一致性检测的装置。

背景技术

MySQL是一个关系型数据库管理系统,通过将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,加快了数据访问速度并提高了灵活性。为了实现服务器的负载均衡,以及增强数据库系统抵御灾难的能力,MySQL数据库系统,同其他流行的数据库系统一样,也采用了主从同步的架构方式,即:系统中包括两台服务器:主服务器和从服务器。采用上述架构方式的目的有以下两个方面。首先,可以在主服务器上只实现数据的更新操作,而将数据的查询请求全部发送给从服务器来执行,通过将数据更新与查询分别放在不同的服务器上执行,能够缩短对用户操作的响应时间、提高系统的性能。其次,在主服务器发生故障时,能够将数据库操作请求直接切换到从服务器继续提供服务,可以保证用户业务的稳定运行。显然,为了实现上述两个目的,必然要求从服务器的数据与主服务器的数据保持一致。特别是在金融类业务中,要求主、从服务器数据必须保持完全一致,否则可能会给用户带来难以弥补的损失。

为达到上述主、从服务器数据完全一致的目的,MySQL利用二进制日志binlog实现。其实现方式具体如下:主服务器将执行的数据更新动作写入二进制日志binlog中,并将二进制日志binlog发送给从服务器,从服务器接收二进制日志binlog并应用,即:将主服务器上的数据更新动作,在从服务器上执行一次,从而达到主、从服务器数据的一致;这个过程通常被称作MySQL主从复制过程。但在具体实施中,由于binlog是一种逻辑日志,记录的是数据库的逻辑操作,因此可能存在由于主、从服务器的初始状态不一致、从服务器数据被应用更新等原因造成的主、从服务器数据不一致的问题。

基于上述原因,在MySQL主从复制过程中,常常需要对某些重要的数据库和/或表进行主从一致性检测。MySQL系统目前进行主从一致性检测的主要方法是:分别在主、从服务器上进行查询,将需要进行一致性检测的数据库和/或表中的记录逐行读出来进行比对。该方法简便易行,但是由于下述原因,导致该方法无法准确判断主、从服务器的数据是否一致:

首先,由于主、从服务器的数据在进行复制时存在一定的延迟,数据在复制完全结束之前,一直处于不断变化且并不完整的状态下,因此直接读取主、从服务器数据的方式无法严格保证获取数据的一致性。

其次,因为主、从服务器是动态更新,无法保证从主、从两个服务器上发起一致性检测的查询请求的逻辑时间点严格相同,即:无法保证在主、从服务器上发起查询请求时看到的是主、从服务器相同时刻的视图。由于发起查询请求的逻辑时间点不同,甚至可能导致将主、从服务器数据一致的状态,误判为不一致。

针对上述主从一致性检测方法的缺陷,现有的改进方案是采用多次查询的方式,也就是说如果第一次查询得到的主、从服务器的数据不一致,则再次针对主、从服务器分别发起第二次查询请求,并判断查询结果是否一致。现有的改进方案希望通过多次重试来减少误判,但这种做法同样存在缺陷:

第一、无法从根本上避免存在误判的可能性。因为主从在动态更新过程中,如果主、从服务器繁忙(例如:更新请求量大的情况),第二次查询仍然有可能误判,甚至出现多次误判。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201310593859.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top