The application relates to a method, system, computer equipment and storage medium for realizing high availability of database. The method includes: detecting the main database through a plurality of judgment logic; among them, the main database is deployed in the main node, and the judgment logic includes at least two of heartbeat detection, connection detection and monitoring detection. When the detection results of the plurality of judgment logic are all faults, a standby database is determined as the standby database. Switching objects, in which the standby database is deployed in the slave node, when the switching object runs normally, the standby object is switched to the master database, and the slave node corresponding to the switching object is determined as the master node. This method can make the database highly available and simpler and more convenient.
【技术实现步骤摘要】
实现数据库高可用方法、系统、计算机设备和存储介质
本申请涉及数据库
,特别是涉及一种实现数据库高可用方法、系统、计算机设备和存储介质。
技术介绍
高可用,即highavailability,是对下层组件提供了容灾的机制。当组件主节点发生故障时,能够快速地、自动地将服务切换到备节点上,从而实现业务的连续性。目前绝大多数公司核心业务数据库采用的是Oracle数据库。Oracle强大的性能和完善的功能,得到了广泛的认可。Oracle官方对于数据库高可用的概念,也提供了一定的支持。目前,官方提供了两种解决方案,其一是基于dataguard自动切换工具dg_broker;其二是利用集群,也即OracleRAC。然而,利用自动切换工具dg_broker实现的高可用实现起来繁琐,且有一定的局限性,利用集群实现的高可用,一方面结构复杂,而且在节点超过3个时,性能急剧下降,以上方法在数据库较多的情况时,实现数据库的高可用较为复杂。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够解决数据库实现高可用较为复杂的问题的实现数据库高可用的方法、系统、计算机设备和存储介质。一种 ...
【技术保护点】
1.一种实现数据库高可用的方法,其特征在于,所述方法包括:通过多个判断逻辑对主数据库进行检测;其中,所述主数据库部署在主节点,所述判断逻辑至少包括:心跳检测、连接检测以及监听检测中的至少两个;在所述多个判断逻辑的检测结果均为故障时,确定一个备用数据库作为切换对象;其中,所述备用数据库部署在从节点;在所述切换对象的运行状态正常时,将所述备用对象切换为主数据库,并确定所述切换对象对应的从节点为主节点。
【技术特征摘要】
1.一种实现数据库高可用的方法,其特征在于,所述方法包括:通过多个判断逻辑对主数据库进行检测;其中,所述主数据库部署在主节点,所述判断逻辑至少包括:心跳检测、连接检测以及监听检测中的至少两个;在所述多个判断逻辑的检测结果均为故障时,确定一个备用数据库作为切换对象;其中,所述备用数据库部署在从节点;在所述切换对象的运行状态正常时,将所述备用对象切换为主数据库,并确定所述切换对象对应的从节点为主节点。2.根据权利要求1所述的实现数据库高可用的方法,其特征在于,所述通过多个判断逻辑对主数据库进行检测,包括:在预设时间内向所述主数据库发送多次心跳检测指令,在接收到连续多次的主数据库运行故障的信息时,确定所述心跳检测的检测结果为故障;和/或,通过连接检测对主节点中主数据库进行检测,包括:检测所述主数据库的连接数是否正常,若否,则确定所述连接检测的检测结果为故障;和/或,通过监听检测对主节点中主数据库进行检测,包括:检测所述主数据库的监听进程是否工作正常,若是,则确定所述监听检测的检测结果为故障;若否,重启所述监听进程;其中,所述监听进程用于获取所述主数据库的运行状态。3.根据权利要求1所述的实现数据库高可用的方法,其特征在于,所述确定一个备用数据库作为切换对象,包括:获取从节点中各个可用的备用数据库的系统修订号,确定所述可用的备用数据库中所述系统修订号最大的备用数据库为所述切换对象。4.根据权利要求1所述的实现数据库高可用的方法,其特征在于,所述将所述备用对象切换为主数据库,包括:关闭所述主数据库以及所述主数据库的远程访问进程,将所述备用对象切换为主数据库,重启所述备用对象。5.根据权利要求1至4任一项所述的实现数据库高可用的方法,其特征在于,在通过多个判断逻辑对主数据库进行检测之前,还包括:接收触发功能选项的指令,判断所述功能选项是否为进入主节点中的主数据库,若是,检测主节点中主数据库的运行状态,在所述主数据库故障时,则通过多个判断逻辑对主数据库进行检测;其中,所述功能选项包括:监控功能、进入主节点中的主数据库以及进入从节点中的备用数据库中的任意一个。6.根据权利要求5所述的实现数据库高可用的方法,其特征在于,在接收触发监控功能的指令时,包括:获取预先设置的监控变量的返回值,根据所述返回值检测所述主节点以及所述从节点是否正常,并将检测结果输出至对应的主节点的日志文件和/或从节点的日志文件中;其中,所述日志文件部署在所述主节点和所述从节点中,所述日...
【专利技术属性】
技术研发人员:王越,
申请(专利权)人:招银云创深圳信息技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。