[发明专利]一种主从数据库的切换方法和装置在审
申请号: | 202210346323.0 | 申请日: | 2022-04-02 |
公开(公告)号: | CN114741221A | 公开(公告)日: | 2022-07-12 |
发明(设计)人: | 王小兵;吴宏亮;李涛 | 申请(专利权)人: | 麒麟合盛网络技术股份有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07;G06F11/30 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 许振新 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 主从 数据库 切换 方法 装置 | ||
1.一种主从数据库的切换方法,其特征在于,包括:
监控多组数据库的实例状态信息,每组数据库中包括一个主数据库和至少一个从数据库;
针对所述多组数据库中的第一组数据库,根据监控结果确定第一数据库是否故障,所述第一数据库为所述第一组数据库中的主数据库;
在确定所述第一数据库故障的情况下,确定第二数据库中的目标数据库,所述第二数据库为所述第一数据库的从数据库,所述目标数据库包括所述第二数据库中与所述第一数据库的数据差异最小的数据库;
将所述目标数据库切换为新的主数据库;
将所述第一组数据库的主数据库域名重定向为所述目标数据库的域名。
2.如权利要求1所述的方法,其特征在于,所述根据监控结果确定第一数据库是否故障,包括:
判断是否成功获取到所述第一组数据库的实例状态信息;
若否,则判断所述第一数据库与所述第二数据库之间的IO线程的状态是否正常;
若所述IO线程的状态异常,则确定所述第一数据库故障。
3.如权利要求1所述的方法,其特征在于,所述从第二数据库中确定目标数据库,包括:
将所述第一数据库和所述第二数据库进行数据比对,确定所述第一数据库与所述第二数据库之间的数据差异;
将具有最小数据差异的第二数据库确定为所述目标数据库。
4.如权利要求1所述的方法,其特征在于,在将所述目标数据库切换为新的主数据库后,所述方法还包括:
清除所述第一数据库与所述目标数据库之间的主从关系;
清除所述第一数据库与第三数据库之间的主从关系,并建立所述目标数据库与所述第三数据库之间的主从关系,所述第三数据库为所述第二数据库中除所述目标数据库以外的其他数据库。
5.如权利要求1所述的方法,其特征在于,在将所述目标数据库切换为新的主数据库后,所述方法还包括:
生成主从切换信息;
其中,所述将所述第一组数据库的主数据库域名重定向为所述目标数据库的域名,包括:
基于所述主从切换信息,将所述第一组数据库的主数据库域名重定向为所述目标数据库的域名。
6.如权利要求5所述的方法,其特征在于,所述主从切换信息包括以下至少一项:
所述目标数据库的主机名;
所述目标数据库的端口;
第一数据表,所述第一数据表中记录有多个数据库的主机名、IP地址、端口以及域名之间的对应关系;
第二数据表,所述第二数据表中记录有多个数据库的IP地址和域名之间的对应关系。
7.如权利要求6所述的方法,其特征在于,所述基于所述主从切换信息,将所述第一组数据库的主数据库域名重定向为所述目标数据库的域名,包括:
根据所述目标数据库的主机名和端口,在所述第一数据表中查找与所述目标数据库的主机名和端口对应的目标IP和目标域名;
在所述第二数据表中查找是否存在所述目标IP和所述目标域名;
若存在,则将所述第二数据表中的所述目标域名切换为所述第一组数据库的主数据库域名。
8.一种主从数据库的切换装置,其特征在于,包括:
监控模块,监控多组数据库的实例状态信息,每组数据库中包括一个主数据库和至少一个从数据库;
故障分析模块,针对所述多组数据库中的第一组数据库,根据监控结果确定第一数据库是否故障,所述第一数据库为所述第一组数据库中的主数据库;
确定模块,在确定所述第一数据库故障的情况下,确定第二数据库中的目标数据库,所述第二数据库为所述第一数据库的从数据库,所述目标数据库包括所述第二数据库中与所述第一数据库的数据差异最小的数据库;
切换模块,将所述目标数据库切换为新的主数据库;
重定向模块,将所述第一组数据库的主数据库域名重定向为所述目标数据库的域名。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于麒麟合盛网络技术股份有限公司,未经麒麟合盛网络技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210346323.0/1.html,转载请声明来源钻瓜专利网。