[发明专利]主备板的数据库双向同步方法和系统有效
申请号: | 201310416525.9 | 申请日: | 2013-09-12 |
公开(公告)号: | CN103488721B | 公开(公告)日: | 2017-01-18 |
发明(设计)人: | 吴志鹏;李高朋;刘志勇;邓梅娟;姚舜;谭廷柱;徐胤 | 申请(专利权)人: | 京信通信系统(中国)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州华进联合专利商标代理有限公司44224 | 代理人: | 王茹,曾旻辉 |
地址: | 510663 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 主备板 数据库 双向 同步 方法 系统 | ||
技术领域
本发明涉及数据库同步技术领域,特别是涉及一种主备板的数据库双向同步方法,以及一种主备板的数据库双向同步系统。
背景技术
在网关的HA(High Availability,高可靠性)切换过程中,主备板的数据库数据同步是必不可少的一步。Mysql数据库因其高性能、稳定可靠和免费开源,被广泛用于中小型项目的数据载体。Mysql自身带有数据库复制功能,即数据库同步功能,具体原理如图1。简单来说,Mysql数据库的同步是通过日志来进行的,备板获取主机的日志,然后在本端解析执行,来完成数据同步。
Mysql自带的同步功能在正常情况下工作良好,但是一旦涉及到板卡系统重启或者掉电,同步就会产生不可预知的异常,这部分异常产生的主要源于对数据库的操作日志没办法即时写入磁盘和网络传输过程中的丢失。另外在异常宕机时,甚至可能产生数据库崩溃的严重情况,而网关HA切换过程,就经常涉及到掉电重启等情况。
在互为主/备(master/slave)的两个数据库之间。slave上mysql的同步工作有两个线程I/O thread和SQL thread,I/O线程的作用是从master的3306端口(Mysql默认端口)把它的binlog取过来(master在被修改了任何内容后,就会把修改了什么写到自己的binlog等待slave更新),然后写到本地的relay-log上;而SQL线程则是去读本地的relay-log,再转换成本mysql所能理解的语句,于是同步就这样一步步完成。
正常情况下,配置过Mysql双向同步后,能够按照上面的描述工作,双主的两台机A,B能够同步所有对数据库的操作。这里有一点需要注意,对于数据库自增的主键,需要在配置里面添加配置避免主键冲突。
但是在系统宕机、重启、或者掉电时,应用程序对数据库的操作的日志很可能没那么即时的刷写到磁盘上去,导致这部分数据没法同步到对端数据库中;而且传输中的数据也可能丢失。
发明内容
基于此,本发明提供一种主备板的数据库双向同步方法和系统,能在主备板运行异常时,保证主备板数据库保持同步状态。
一种主备板的数据库双向同步方法,包括如下步骤:
根据预设的时间周期分别对主备板的数据库进行备份,得到对应的备份数据;
检测主备板是否重启过;
若主备板都重启过,则主备板的数据库分别通过其备份数据进行数据恢复。
一种主备板的数据库双向同步系统,包括:
备份模块,用于根据预设的时间周期分别对主备板的数据库进行备份,得到对应的备份数据;
检测模块,用于检测主备板是否重启过;
恢复模块,用于若主备板都重启过,则主备板的数据库分别通过其备份数据进行数据恢复。
上述主备板的数据库双向同步方法和系统,根据主备板的工作状态,可设定在网关较为空闲的时候分别对主备板的数据库进行备份,如果板卡同时重启并且重启后数据库服务都不正常,则通过备份的数据进行恢复,保证在主备板同时运行异常时仍能保持数据同步;本发明实现过程简单,能良好的保证数据库同步状态正确,解决了主备板运行异常时的数据同步难题。
附图说明
图1为传统技术数据库同步的示意图。
图2为本发明主备板的数据库双向同步方法在一实施例中的流程示意图。
图3为本发明主备板的数据库双向同步方法在一实施例中的逻辑框图。
图4为本发明主备板的数据库双向同步系统在一实施例中的结构示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细说明,但本发明的实施方式不限于此。
如图2所示,是本发明一种主备板的数据库双向同步方法,包括如下步骤:
S21、根据预设的时间周期分别对主备板的数据库进行备份,得到对应的备份数据;
在本步骤中,可根据主备板的工作状态,设定在网关较为空闲的时候分别对主备板的数据库进行备份;或者也可设定更为频繁的备份方式,如每小时进行一次数据库备份;如果板卡同时重启并且重启后数据库服务都不正常,则通过备份的数据进行恢复;主备板备份的数据分别存储在各自对应的数据库中。
S22、检测主备板的运行状态;
S23、若主备板都重启过,则主备板的数据库分别通过其备份数据进行数据恢复;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京信通信系统(中国)有限公司,未经京信通信系统(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310416525.9/2.html,转载请声明来源钻瓜专利网。