[发明专利]一种数据库的管理方法及数据库系统在审
申请号: | 201610312657.0 | 申请日: | 2016-05-12 |
公开(公告)号: | CN107368485A | 公开(公告)日: | 2017-11-21 |
发明(设计)人: | 陈华军 | 申请(专利权)人: | 苏宁云商集团股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 江苏圣典律师事务所32237 | 代理人: | 许峰,苏一帜 |
地址: | 210042 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 管理 方法 系统 | ||
技术领域
本发明涉及数据库技术领域,尤其涉及一种数据库的管理方法及数据库系统。
背景技术
关系型数据库是目前广泛使用的一种数据库类型,在关系型数据库的建设中通常需要由多台数据服务器组成集群。MySQL(一种关系型数据库管理系统)则是目前常用的一种关系型数据库管理系统,并用于管理集群。
目前基于MySQL设计的集群方案中,需要分别配置节点承担Master的角色和Slave的角色,用户设备所提交的数据会通过半同步复制的形式分别写入Master节点和Slave节点,从而提高数据写入过程的安全性。
在系统的实际运行中,也会出现网络拥堵、数据写入错误以及设备故障等诸多问题,这些问题通常会导致数据由Master节点写入Slave节点超时,为了保证系统的运行稳定性,会将半同步复制退化为异步复制。而在异步复制中,数据写入Slave节点的时机与写入Master节点的时机并不关联,即数据写入Master节点后即判定写入成功。若退化为异步复制后数据并未写入Slave节点,则很容易造成此份数据丢失,导致系统中的数据混乱。并且,当Master节点出现故障时,需要将相应的Slave节点升级为Master节点,但由于系统对于故障判定不准确或者误报等原因,会造成Slave节点升级为新的Master节点后,原Master节点依然运作的情况,此时写入数据则会造成数据写入两个Master节点的“双写”问题,从而进一步加剧了系统中的数据混乱,导致数据稳定性很低。
发明内容
本发明的实施例提供数据库的管理方法及数据库系统,能够提高系统中数据读写的稳定性。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明的实施例提供一种数据库的管理方法,包括:接收用户设备发送的待写入数据,并将所述待写入数据写入集群中的Master节点;将所述待写入数据由所述Master节点向所述Master节点所在分区中的至少两个与所述Master节点对应的Slave节点传输,并检测所述Master节点是否接收到至少一个Slave节点发送的响应消息,所述响应消息由成功写入所述接收的数据的Slave节点发送;若所述Master节点接收到至少一个Slave节点发送的响应消息,则向所述用户设备通知消息,所述通知消息用于表示所述待写入数据成功写入的数据库。
结合第一方面,在第一方面的第一种可能的实现方式中,所述接收用户设备发送的待写入数据,并将所述待写入数据写入集群中的Master节点,包括:通过所述集群中的读写路由接收由所述用户设备上运行的应用所发出的所述待写入数据,所述读写路由绑定所述集群中的Master节点并配置在所述集群中的Master节点上;通过所述读写路由从所述集群中的Master节点中筛选出目标节点,并将所述待写入数据引流至所述目标节点。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括:通过所述集群中的只读路由接收由所述用户设备上运行的应用所发出的读取请求,所述只读路由绑定所述集群中的Slave节点并配置在所述集群中的Slave节点上;从所述集群中的Slave节点提取所述读取请求指向的数据,并将所提取的数据向所述用户设备发送。
结合第一方面,在第一方面的第三种可能的实现方式中,还包括:对于所 述集群中的各个分区,当一个分区中的Master节点故障时,检测所述一个分区中的节点数量是否大于2;若是,则将所述一个分区中的Slave节点升级为Master节点,并将所述一个分区中所有的Slave节点的数据补偿到最新状态,所述最新状态指所述一个分区中的Master节点在故障前完成最后一笔事务后数据状态,其中,所述一个分区配置的超时时间大于等于最大阈值,所述超时时间为判定所述一个分区中的Slave节点是否发生降级的时间参数,若所述一个分区中的Slave节点降级,则由所述一个分区的Master节点向Slave节点传输数据的方式由半同步复制退化为异步复制。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,还包括:通过配置的负载均衡器,监控所述一个分区中的所有Slave节点的更新状态,所述负载均衡器配置在所述一个分区中的Slave节点上;根据所在分区中的所有Slave节点的更新状态判定所在分区中的各Slave节点是否故障。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏宁云商集团股份有限公司,未经苏宁云商集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610312657.0/2.html,转载请声明来源钻瓜专利网。