【技术实现步骤摘要】
一种数据库高可用方法及系统
本专利技术涉及数据库高可用
,尤其涉及一种数据库高可用方法及系统。
技术介绍
数据库维护期间,需要数据库管理员进行7X24小时全天候的在线支持。由于性能需要,MYSQL数据库主从架构开启半同步复制,在数据库故障发生后,数据库主从切换,可能需要人为补偿丢失的数据,极大影响了应用的可用性。假如未及时发现数据库故障并且主备切换后发生数据丢失的情况,这样极有可能导致生产事故的发生。特别是对于涉及到交易资金往来的系统,会导致严重的生产事故。在数据库系统故障期间,应用数据的可靠性得不到保障。基于上述描述,现有技术中亟待解决的技术问题在于:当数据库故障发生的时候,如何自动检查主从同步的情况,根据主从同步的情况进行自动的数据补偿操作。换言之,现有技术中不存在一套系统可以在数据库发生故障时自动进行主从切换,并且能够解决切换过程中发生的数据延迟问题。
技术实现思路
根据现有技术中存在的上述问题,现提供一种数据库高可用方法及系统,旨在通过定期检查主从状态,并且根据从库应用数据库日志的情况判断主从延迟的情况,自动补偿从库的数据,减少数据库管理员人为干预操作,减少了系统宕机的时间,避免了传统高可用架构由于主从不一致切换主从角色导致数据丢失的情况,降低生产事故发生的概率。上述技术方案具体包括:一种数据库高可用方法,提供两个数据库、一负载均衡控制器以及一监控节点,负载均衡控制器和监控节点分别连接主数据库和从数据库,监控节点还连接负载均衡控制器;初始状态下,于两个 ...
【技术保护点】
1.一种数据库高可用方法,其特征在于,提供两个数据库、一负载均衡控制器以及一监控节点,所述负载均衡控制器和所述监控节点分别连接所述主数据库和所述从数据库,所述监控节点还连接所述负载均衡控制器;/n初始状态下,于两个所述数据库中设置一个作为主数据库,另一个作为从数据库;/n所述数据库高可用方法包括以下步骤:/n步骤S1,所述监控节点对所述数据库进行周期性监控,当存在有所述数据库的运行状态出现异常时转向步骤S2;/n步骤S2,所述监控节点判断出现异常的所述数据库的类型:/n若为主数据库,则转向步骤S3;/n若为从数据库,则输出相应的告警信息,随后返回所述步骤S1;/n步骤S3,所述监控节点判断所述主数据库和要被切换的所述从数据库之间是否存在同步延迟;/n若是,则转向步骤S4;/n若否,则转向步骤S5;/n步骤S4,所述监控节点根据所述主数据库的数据库日志对所述从数据库进行数据补充后返回所述步骤S3;/n步骤S5,所述监控节点通知所述负载均衡控制器对所述主数据库和所述从数据库进行主从切换,随后返回所述步骤S1。/n
【技术特征摘要】
1.一种数据库高可用方法,其特征在于,提供两个数据库、一负载均衡控制器以及一监控节点,所述负载均衡控制器和所述监控节点分别连接所述主数据库和所述从数据库,所述监控节点还连接所述负载均衡控制器;
初始状态下,于两个所述数据库中设置一个作为主数据库,另一个作为从数据库;
所述数据库高可用方法包括以下步骤:
步骤S1,所述监控节点对所述数据库进行周期性监控,当存在有所述数据库的运行状态出现异常时转向步骤S2;
步骤S2,所述监控节点判断出现异常的所述数据库的类型:
若为主数据库,则转向步骤S3;
若为从数据库,则输出相应的告警信息,随后返回所述步骤S1;
步骤S3,所述监控节点判断所述主数据库和要被切换的所述从数据库之间是否存在同步延迟;
若是,则转向步骤S4;
若否,则转向步骤S5;
步骤S4,所述监控节点根据所述主数据库的数据库日志对所述从数据库进行数据补充后返回所述步骤S3;
步骤S5,所述监控节点通知所述负载均衡控制器对所述主数据库和所述从数据库进行主从切换,随后返回所述步骤S1。
2.如权利要求1所述的数据库高可用方法,其特征在于,所述步骤S1中,所述监控节点采用下述方法分别对每个所述数据库进行周期性监控:
步骤S11,所述监控节点周期性地检测所述数据库是否有响应,并记录所述数据库的连续无响应的次数;
步骤S12,所述监控节点判断所述连续无响应的次数是否超过一预设的第一阈值:
若是,则转向所述步骤S2;
若否,则返回所述步骤S11。
3.如权利要求1所述的数据库高可用方法,其特征在于,所述步骤S3具体包括:
步骤S31,判断所述从数据库与所述主数据库之间的同步延迟是否超过一预设的第一延迟阈值;
若是,则判定所述主数据库和所述从数据库之间存在同步延迟,转向所述步骤S4;
若否,则判定所述主数据库和所述从数据库之间不存在同步延迟,转向所述步骤S5。
4.如权利要求1所述的数据库高可用方法,其特征在于,所述步骤S4具体包括:
步骤S41,判断所述主数据库和所述从数据库之间的同步延迟是否超过一预设的第二延迟阈值;
若是,则转向所述步骤S42;
若否,则转向所述步骤S43;
步骤S42,从所述主数据库中获取所述从数据库中缺失的所述数据库日志,以对所述从数据库进行数据补充;
步骤S43,应用所述主数据库的所述数据库日志对所述从数据库进行数据补充。
5.如权利要求1所述的数据库高可用方法,其特征在于,所述步骤S1中,若所述监控节点监测到所述从数据库的运行状态出现异常,则所述监控节点根据所述从数据库的数据库日志分析得到所述从数据库的异常原因,并向所述从数据库的数据库控制器发出相应的告警信息,...
【专利技术属性】
技术研发人员:严聪,
申请(专利权)人:上海瀚银信息技术有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。