[发明专利]一种数据备份方法及装置有效
申请号: | 201210291403.7 | 申请日: | 2012-08-15 |
公开(公告)号: | CN103593257A | 公开(公告)日: | 2014-02-19 |
发明(设计)人: | 刘辉;翟卫祥 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
地址: | 英属开曼群岛大开曼*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 备份 方法 装置 | ||
技术领域
本申请涉及通信技术领域,尤其涉及一种数据备份方法及装置。
背景技术
MySQL是一种小型关系型数据库管理系统。一般的,MySQL包括主库和备库,主库用于提供数据管理和数据查询等功能,备库用于备份主库中的数据,用以在主库发生故障时代替主库提供相应的功能。
图1为现有技术中MySQL中的主库将自身的数据备份到备库的过程,具体包括以下步骤:
S101:主库在对自身的数据进行操作时,生成对应的操作记录并记录在二进制日志(binlog)中。
其中,主库对自身的数据的操作包括:更新操作、插入操作、删除操作。
例如,主库将自身的数据A更新为数据B时,生成将该数据A更新为数据B的操作记录,并记录在binlog日志中。
S102:备库创建一个I/O线程,通过该I/O线程读取主库保存的binlog日志。
S103:备库将读取到的binlog日志转换成中继日志(relay)。
其中,主库保存的binlog日志中记录的操作记录,与备库转换的relay日志中记录的操作记录相同,只是binlog日志与relay日志的格式不同。
继续沿用上例,由于主库的binlog日志中记录有将数据A更新为数据B的操作记录,因此备库转换的relay日志中也包含将数据A更新为数据B的操作记录。
S104:备库创建一个SQL线程,通过创建的SQL线程依次读取relay日志中记录的每个操作记录。
继续沿用上例,备库读取到的操作记录即为将数据A更新为数据B的操作记录。
S105:备库根据读取到的操作记录,将该操作记录对应的数据读取到内存中,并根据该操作记录对内存中的该数据进行相应操作。
继续沿用上例,由于读取到的操作记录为将数据A更新为数据B的操作记录,因此该操作记录对应的数据即为备库中保存的数据A。备库则将该数据A读取到内存中,再将该操作记录(将数据A更新为数据B的操作记录)解析为相应的执行语句并执行,用以将内存中的该数据A更新为数据B,完成对主库数据的备份。
由上述图1所示的过程可以看出,备库在备份主库中的数据时,是通过创建的一个SQL线程依次读取relay日志中的操作记录进行操作的,也即备库是通过一个SQL线程串行的执行relay日志中各操作记录对应的执行语句,实现数据的备份的。而在实际应用中,主库通常是通过多个线程并行的对保存的各数据进行操作的,例如主库可以同时通过几十个线程并行的对相应数量的数据进行操作,而备库在备份这些数据时,只能通过一个线程串行的备份这些数据,这就会导致备库对主库数据的备份速度远远落后于主库对自身保存的数据进行操作的速度。
为了提高备库对主库数据进行备份的速度,现有技术中主要有以下三种方法。
第一种,对于relay日志中任意两个事务,如果一个事务中包含的操作记录对应的数据在主库中所属的分库,不同于另一个事务中包含的操作记录对应的数据在主库中所属的分库,则备库分别通过两个空闲的线程并行的对这两个事务中包含的操作记录进行处理,以备份主库中这两个事务中包含的操作记录对应的数据。如果一个事务中包含的操作记录对应的数据在主库中所属的分库,与另一个事务中包含的操作记录对应的数据在主库中所属的分库相同,则备库仍然通过一个线程串行的对这两个事务中包含的操作记录进行处理,以备份主库中这些操作记录对应的数据。
其中,binlog日志和relay日志均是以事务的形式对操作记录进行记录的,一个事务中包含若干个操作记录,这若干个操作记录一般是用户在进行一个业务操作时,数据库根据这个业务操作对自身保存的数据所要做出的若干个操作所对应的若干个操作记录。并且,在binlog日志和relay日志中,每个事务均具有一个事务开始标记和事务结束标记。
例如,某用户有四个账号,分别为账号A、账号B、账号C、账号D,这四个账号中均有10000元,现该用户从账号A向账号B转入1000元,再从账号C向账号D转入1000元,那么主库中的binlog日志和备库中的relay日志则均会记录有两个事务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210291403.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种多功能汽车防盗器匹配的遥控器
- 下一篇:一种带有防尘罩的控制箱
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置