CN114785789B - 数据库故障管理方法、装置、电子设备及存储介质 - Google Patents

数据库故障管理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114785789B
CN114785789B CN202210445749.1A CN202210445749A CN114785789B CN 114785789 B CN114785789 B CN 114785789B CN 202210445749 A CN202210445749 A CN 202210445749A CN 114785789 B CN114785789 B CN 114785789B
Authority
CN
China
Prior art keywords
database
service
master
management node
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210445749.1A
Other languages
English (en)
Other versions
CN114785789A (zh
Inventor
王安宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Lian Intellectual Property Service Center
Yongcheng Hengyi Network Technology Co ltd
Original Assignee
Yongcheng Hengyi Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yongcheng Hengyi Network Technology Co ltd filed Critical Yongcheng Hengyi Network Technology Co ltd
Priority to CN202210445749.1A priority Critical patent/CN114785789B/zh
Publication of CN114785789A publication Critical patent/CN114785789A/zh
Application granted granted Critical
Publication of CN114785789B publication Critical patent/CN114785789B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及数据处理领域,揭露一种数据库故障管理方法、装置、电子设备以及存储介质,所述方法包括:获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点;检测所述主管理节点是否出现服务管理异常状态;若检测到所述主管理节点未出现服务管理异常状态,利用所述主管理节点中的服务故障检测脚本检和服务故障恢复脚本,以执行对所述数据库集群的故障管理;若检测到所述主管理节点出现服务管理异常状态,利用所述从管理节点中的服务故障检测脚本检和服务故障恢复脚本,以执行对所述数据库集群的故障管理。本发明可以提高数据库故障解决能力,从而减少数据库的数据丢失风险。

Description

数据库故障管理方法、装置、电子设备及存储介质
技术领域
本发明涉及数据处理领域,尤其涉及一种数据库故障管理方法、装置、电子设备及存储介质。
背景技术
在面对数据井喷式的增长下,现有技术中通常采用的是一套数据库管理节点、以及一套一主两从的数据库主从复制的架构,以实现数据的高可用存储,即在面对数据库在主库宕机等异常情况下,可以快速切换到其中一个从库,将该从库作为新的主库,并使用新的主库提供对外服务,从而减少应用不可访问的时间。但是该架构在面对数据库管理节点出现异常时,并没有办法提供很好的解决方法,从而会导致在进行数据库故障处理过程中也会出现异常,使得数据库故障无法得到很好的解决,进而会带来数据库中数据丢失的风险。
发明内容
本发明提供一种数据库故障管理方法、装置、电子设备及计算机可读存储介质,其主要目的在于提高数据库故障解决能力,从而减少数据库的数据丢失风险。
为实现上述目的,本发明提供的一种数据库故障管理方法,包括:
获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点;
检测所述主管理节点是否出现服务管理异常状态;
若检测到所述主管理节点未出现服务管理异常状态,利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理;
若检测到所述主管理节点出现服务管理异常状态,利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述从管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理。
可选地,所述根据所述主管理节点,配置所述数据库集群的从管理节点,包括:
获取所述主管理节点的主服务器,根据所述主服务器,配置所述数据库机器的从服务器,并在所述主服务器和所述从服务器中创建分别故障转移插件;
根据所述故障转移插件,配置所述从服务器与所述主服务器的数据同步文件,以生成所述数据库集群的从管理节点。
可选地,所述检测所述主管理节点是否出现服务管理异常状态,包括:
识别所述主管理节点的服务器是否出现宕机;
若所述服务器出现宕机,则所述主管理节点出现服务管理异常状态;
若所述服务器未出现宕机,则利用预设的服务检测脚本检测所述主管理节点的服务状态是否正常;
若所述主管理节点的服务状态正常,则所述主管理节点未出现服务管理异常状态;
若所述主管理节点的服务状态异常,则所述主管理节点出现服务管理异常状态。
可选地,所述利用预设的服务检测脚本检测所述主管理节点的服务状态是否正常,包括:
利用所述预设的服务检测脚本中的检测指令识别所述主管理节点返回的关键字;
根据所述关键字,识别所述主管理节点的服务状态是否正常。
可选地,所述利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,包括:
利用所述服务故障检测脚本中的查询指令查询所述数据库集群中主数据库的运行数据;
根据所述运行数据,利用所述服务故障检测脚本中的活性检测指令检测所述数据库集群中主数据库是否具有存活性;
若所述数据库集群中主数据库不具有存活性,则判断出所述数据库集群中主数据库出现服务故障;
若所述数据库集群中主数据库具有存活性,则判断出所述数据库集群中主数据库未出现服务故障。
可选地,所述利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,包括:
利用所述服务故障恢复脚本中的服务启动指令启动所述数据库集群中的从数据库,并在所述从数据库启动成功时,利用所述服务故障恢复脚本中的服务同步指令检测所述从数据库是否与所述主数据库的服务保持一致;
在所述从数据库与所述主数据库的服务保持一致时,将所述数据库集群中的从数据库作为所述数据库集群的主数据库。
可选地,所述利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障之前,还包括:
利用预设的服务检测命令检测所述从管理节点的服务状态,并在所述服务状态处于正常状态时,利用预设的启动命令启动所述从管理节点的服务故障检测脚本。
为了解决上述问题,本发明还提供一种数据库故障管理装置,所述装置包括:
从管理节点配置模块,用于获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点;
异常状态检测模块,用于检测所述主管理节点是否出现服务管理异常状态;
主管理节点故障管理模块,用于在检测到所述主管理节点未出现服务管理异常状态时,利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理;
从管理节点故障管理模块,用于在检测到所述主管理节点出现服务管理异常状态时,利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述从管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以实现上述所述的数据库故障管理方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的数据库故障管理方法。
可以看出,本发明实施例首先通过获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点,以保障所述主管理节点在对数据库集群管理出现异常时,可以快速切换到从管理节点执行对数据库集群的管理,保障所述数据库集群的管理稳定性;其次,本发明实施例通过检测所述主管理节点是否出现服务管理异常状态,可以实时获取所述主管理节点在进行数据库集群管理过程中的服务状态,从而可以保障后续在主管理节点出现异常时,可以快速切换到从管理节点中执行对所述数据库集群的管理;进一步地,本发明实施例在所述主管理节点未出现服务管理异常状态时,利用所述主管理节点中的服务故障检测脚本检和服务故障恢复脚本,及在所述主管理节点出现服务管理异常状态时,利用所述从管理节点中的服务故障检测脚本检和服务故障恢复脚本,以执行对所述数据库集群的故障管理,可以实现在所述主管理节点出现异常时,依旧可以保障所述数据库集群的故障服务的正常管理,从而可以提高数据库故障解决能力,减少数据库的数据丢失风险。因此,本发明实施例提出的一种数据库故障管理方法、装置、电子设备及存储介质可以提高数据库故障解决能力,从而减少数据库的数据丢失风险。
附图说明
图1为本发明一实施例提供的数据库故障管理方法的流程示意图;
图2为本发明一实施例提供的数据库故障管理装置的模块示意图;
图3为本发明一实施例提供的实现数据库故障管理方法的电子设备的内部结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供一种数据库故障管理方法。所述数据库故障管理方法的执行主体包括但不限于服务端、终端等能够被配置为执行本发明实施例提供的该方法的电子设备中的至少一种。换言之,所述数据库故障管理方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。所述服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
参照图1所示,为本发明一实施例提供的数据库故障管理方法的流程示意图。在本发明实施例中,所述数据库故障管理方法包括以下步骤S1-S4:
S1、获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点。
本发明实施例中,所述数据库集群是指包括一个主数据库和多个从数据库的集群,所述主数据库用于管理和存储数据,所述从数据库用于在所述主数据库处于异常时,代替所述主数据库进行数据管理和存储的功能,所述主管理节点是指用于支持所述数据库集群的数据管理的服务节点,如mha管理节点,所述mha是一套优秀的作为MySQL数据库高可用性环境下故障切换和主从提升的高可用软件,其用于支持MySQL数据库的故障快速转换,以减少MySQL数据库的数据丢失风险。
进一步地,本发明实施例根据所述主管理节点,配置所述数据库集群的从管理节点,以保障所述主管理节点在对数据库集群管理出现异常时,可以快速切换到从管理节点执行对数据库集群的管理,保障所述数据库集群的管理稳定性。
作为本发明的一个实施例,所述根据所述主管理节点,配置所述数据库集群的从管理节点,包括:获取所述主管理节点的主服务器,根据所述主服务器,配置所述数据库机器的从服务器,并在所述主服务器和所述从服务器中创建分别故障转移插件,根据所述故障转移插件,配置所述从服务器与所述主服务器的数据同步文件,以生成所述数据库集群的从管理节点。
其中,所述主服务器用于运行所述主管理节点对所述数据库集群的服务管理,所述故障转移插件用于实现在所述主服务器出现异常时,自动切换至所述从服务器,所述数据同步文件用于实现所述主服务器与所述从服务器的数据一致性。
进一步地,本发明一可选实施例中,所述从服务器按照与所述主服务器的相同功能进行配置,所述故障转移插件包括keepalived插件,所述数据同步文件通过文件同步脚本实现,所述文件同步脚本可以为mha_sync.sh脚本。
S2、检测所述主管理节点是否出现服务管理异常状态。
本发明实施例通过检测所述主管理节点是否出现服务管理异常状态,以实时获取所述主管理节点在进行数据库集群管理过程中的服务状态,从而可以保障后续在主管理节点出现异常时,可以快速切换到从管理节点中执行对所述数据库集群的管理。
作为本发明的一个实施例,所述检测所述主管理节点是否出现服务管理异常状态,包括:识别所述主管理节点的服务器是否出现宕机,若所述服务器出现宕机,则所述主管理节点出现服务管理异常状态,若所述服务器未出现宕机,则利用预设的服务检测脚本检测所述主管理节点的服务状态是否正常,若所述主管理节点的服务状态正常,则所述主管理节点未出现服务管理异常状态,若所述主管理节点的服务状态异常,则所述主管理节点出现服务管理异常状态。
进一步地,本发明一可选实施例中,所述主管理节点的服务器是否出现宕机可以通过判断所述服务器是否正常运行实现,所述预设的服务检测脚本包括mha_service_status.sh脚本。
进一步地,本发明又一可选实施例中,所述利用预设的服务检测脚本检测所述主管理节点的服务状态是否正常,包括:利用所述预设的服务检测脚本中的检测指令识别所述主管理节点返回的关键字,根据所述关键字,识别所述主管理节点的服务状态是否正常。
本发明一可选实施例中,所述检测指令,包括/usr/bin/masterha_check_status--global_conf=/mysql/mha/masterha_default.cnf--conf=/mysql/mha/app1.cnf指令,所述关键字包括is running关键字和not_running关键字,在本发明中,若返回的关键字为is running,则所述主管理节点的服务状态为正常状态,若返回的关键字为not_running,则所述主管理节点的服务状态为异常状态。
S3、若检测到所述主管理节点未出现服务管理异常状态,利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理。
应该了解,在检测到所述主管理节点未出现服务管理异常状态时,表示所述主管理节点对所述数据库集群的故障服务管理处于正常状态,此时不需要切换至从管理节点实现所述数据库集群的故障服务管理,因此,本发明实施例通过利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,以保障后续所述数据库集群中的主数据库在出现服务故障时,可以自动切换至从数据库中进行数据服务,实现所述数据库集群的高可用性。
作为本发明的一个实施例,所述利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,包括:利用所述服务故障检测脚本中的查询指令查询所述数据库集群中主数据库的运行数据,根据所述运行数据,利用所述服务故障检测脚本中的活性检测指令检测所述数据库集群中主数据库是否具有存活性,若所述数据库集群中主数据库不具有存活性,则判断出所述数据库集群中主数据库出现服务故障,若所述数据库集群中主数据库具有存活性,则判断出所述数据库集群中主数据库未出现服务故障。
进一步地,本发明一可选实施例中,所述查询指令包括s–ef|grep mysqld命令,所述活性检测指令包括/var/soft/mysql/bin/mysql-S/var/lib/mysql/mysql.sock-h$MYSQL_HOST-u$MYSQL_USER-p$MYSQL_PASSWORD-e"show status;">/dev/null 2>&1命令。
进一步地,本发明实施例在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以实现所述数据库集群的数据库自动切换,保障所述数据库集群的数据库正常运行,从而完成对所述数据库集群的故障管理。
作为本发明的一个实施例,所述利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,包括:利用所述服务故障恢复脚本中的服务启动指令启动所述数据库集群中的从数据库,并在所述从数据库启动成功时,利用所述服务故障恢复脚本中的服务同步指令检测所述从数据库是否与所述主数据库的服务保持一致,在所述从数据库与所述主数据库的服务保持一致时,将所述数据库集群中的从数据库作为所述数据库集群的主数据库。
本发明一可选实施例中,所述服务启动指令包括:nohup$mysql_home/bin/mysqld_safe–defaults-file=/etc/my.cnf&命令,所述服务同步指令包括:status_slave_io_running=`mysql-u$usermysql-p$passwdmysql-h$iplist-e"show slavestatus\G"2>/dev/null|grep-wSlave_IO_Running|awk'{print$2}'`和status_slave_sql_running=`mysql-u$usermysql-p$passwdmysql-h$iplist-e"show slave status\G"2>/dev/null|grep-wSlave_SQL_Running|awk'{print$2}'`命令。
需要说明的是,本发明中,在所述从数据库与所述主数据库的服务未保持一致时,启动start slave命令,以使得所述从数据库与所述主数据库的服务恢复同步。
S4、若检测到所述主管理节点出现服务管理异常状态,利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述从管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理。
应该了解,在检测到所述主管理节点出现服务管理异常状态时,表示所述主管理节点并不具备对所述数据库集群的故障服务管理功能,因此,本发明实施例通过利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,以实现在所述主管理节点出现异常时,依旧可以保障所述数据库集群的故障服务的正常管理,从而可以提高数据库故障解决能力,减少数据库的数据丢失风险。
进一步,本发明实施例中,所述利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障之前,还包括:利用预设的服务检测命令检测所述从管理节点的服务状态,并在所述服务状态处于正常状态时,利用预设的启动命令启动所述从管理节点的服务故障检测脚本。
进一步地,本发明一可选实施例中,所述服务检测命令包括ping命令,所述预设的启动命令包括nohup/usr/bin/masterha_manager--global_conf=/mysql/mha/masterha_default.cnf--conf=/mysql/mha/app1.cnf>/mysql/mha/app1/manager.log 2>&1&命令。
需要说明的是,通过所述从管理节点中的服务故障检测脚本和服务故障恢复脚本,对所述数据库集群的故障管理所实现的原理,与上述步骤S3中通过所述主管理节点中的服务故障检测脚本和服务故障恢复脚本对所述数据库集群的故障管理实现原理相同,在此不做进一步的赘述。
可以看出,本发明实施例首先通过获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点,以保障所述主管理节点在对数据库集群管理出现异常时,可以快速切换到从管理节点执行对数据库集群的管理,保障所述数据库集群的管理稳定性;其次,本发明实施例通过检测所述主管理节点是否出现服务管理异常状态,可以实时获取所述主管理节点在进行数据库集群管理过程中的服务状态,从而可以保障后续在主管理节点出现异常时,可以快速切换到从管理节点中执行对所述数据库集群的管理;进一步地,本发明实施例在所述主管理节点未出现服务管理异常状态时,利用所述主管理节点中的服务故障检测脚本检和服务故障恢复脚本,及在所述主管理节点出现服务管理异常状态时,利用所述从管理节点中的服务故障检测脚本检和服务故障恢复脚本,以执行对所述数据库集群的故障管理,可以实现在所述主管理节点出现异常时,依旧可以保障所述数据库集群的故障服务的正常管理,从而可以提高数据库故障解决能力,减少数据库的数据丢失风险。因此,本发明实施例提出的一种数据库故障管理方法可以提高数据库故障解决能力,从而减少数据库的数据丢失风险。
如图2所示,是本发明数据库故障管理装置的功能模块图。
本发明所述数据库故障管理装置100可以安装于电子设备中。根据实现的功能,所述数据库故障管理装置可以包括从管理节点配置模块101、异常状态检测模块102、主管理节点故障管理模块103以及从管理节点故障管理模块104。本发明所述模块也可以称之为单元,是指一种能够被电子设备的处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
所述从管理节点配置模块101,用于获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点;
所述异常状态检测模块102,用于检测所述主管理节点是否出现服务管理异常状态;
所述主管理节点故障管理模块103,用于在检测到所述主管理节点未出现服务管理异常状态时,利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理;
所述从管理节点故障管理模块104,用于在检测到所述主管理节点出现服务管理异常状态时,利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述从管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理。
详细地,本发明实施例中所述数据库故障管理装置100中的所述各模块在使用时采用与上述的图1中所述的数据库故障管理方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。
如图3所示,是本发明实现数据库故障管理方法的电子设备1的结构示意图。
所述电子设备1可以包括处理器10、存储器11、通信总线12以及通信接口13,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如数据库故障管理程序。
其中,所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing Unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备1的控制核心(ControlUnit),利用各种接口和线路连接整个电子设备1的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如执行数据库故障管理程序等),以及调用存储在所述存储器11内的数据,以执行电子设备1的各种功能和处理数据。
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(SecureDigital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如数据库故障管理程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述通信总线12可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
所述通信接口13用于上述电子设备1与其他设备之间的通信,包括网络接口和员工接口。可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备1之间建立通信连接。所述员工接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,员工接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的员工界面。
图3仅示出了具有部件的电子设备1,本领域技术人员可以理解的是,图3示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利发明范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的数据库故障管理程序是多个计算机程序的组合,在所述处理器10中运行时,可以实现以下方法:
获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点;
检测所述主管理节点是否出现服务管理异常状态;
若检测到所述主管理节点未出现服务管理异常状态,利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理;
若检测到所述主管理节点出现服务管理异常状态,利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述从管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理。
具体地,所述处理器10对上述计算机程序的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非易失性计算机可读取存储介质中。所述计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本发明还提供一种计算机可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被电子设备1的处理器所执行时,可以实现以下方法:
获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点;
检测所述主管理节点是否出现服务管理异常状态;
若检测到所述主管理节点未出现服务管理异常状态,利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理;
若检测到所述主管理节点出现服务管理异常状态,利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述从管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (8)

1.一种数据库故障管理方法,其特征在于,所述方法包括:
获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点;
利用预设的服务检测脚本检测所述主管理节点是否出现服务管理异常状态;
若检测到所述主管理节点未出现服务管理异常状态,利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理;
若检测到所述主管理节点出现服务管理异常状态,利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述从管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理;
其中,所述检测所述主管理节点是否出现服务管理异常状态,包括:识别所述主管理节点的服务器是否出现宕机;若所述服务器出现宕机,则所述主管理节点出现服务管理异常状态;若所述服务器未出现宕机,则利用预设的服务检测脚本检测所述主管理节点的服务状态是否正常;若所述主管理节点的服务状态正常,则所述主管理节点未出现服务管理异常状态;若所述主管理节点的服务状态异常,则所述主管理节点出现服务管理异常状态;
所述利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,包括:利用所述服务故障检测脚本中的查询指令查询所述数据库集群中主数据库的运行数据;根据所述运行数据,利用所述服务故障检测脚本中的活性检测指令检测所述数据库集群中主数据库是否具有存活性;若所述数据库集群中主数据库不具有存活性,则判断出所述数据库集群中主数据库出现服务故障;若所述数据库集群中主数据库具有存活性,则判断出所述数据库集群中主数据库未出现服务故障。
2.如权利要求1所述的数据库故障管理方法,其特征在于,所述根据所述主管理节点,配置所述数据库集群的从管理节点,包括:
获取所述主管理节点的主服务器,根据所述主服务器,配置所述数据库机器的从服务器,并在所述主服务器和所述从服务器中创建分别故障转移插件;
根据所述故障转移插件,配置所述从服务器与所述主服务器的数据同步文件,以生成所述数据库集群的从管理节点。
3.如权利要求1所述的数据库故障管理方法,其特征在于,所述利用预设的服务检测脚本检测所述主管理节点的服务状态是否正常,包括:
利用所述预设的服务检测脚本中的检测指令识别所述主管理节点返回的关键字;
根据所述关键字,识别所述主管理节点的服务状态是否正常。
4.如权利要求1至3中任意一项所述的数据库故障管理方法,其特征在于,所述利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,包括:
利用所述服务故障恢复脚本中的服务启动指令启动所述数据库集群中的从数据库,并在所述从数据库启动成功时,利用所述服务故障恢复脚本中的服务同步指令检测所述从数据库是否与所述主数据库的服务保持一致;
在所述从数据库与所述主数据库的服务保持一致时,将所述数据库集群中的从数据库作为所述数据库集群的主数据库。
5.如权利要求1所述的数据库故障管理方法,其特征在于,所述利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障之前,所述方法还包括:
利用预设的服务检测命令检测所述从管理节点的服务状态,并在所述服务状态处于正常状态时,利用预设的启动命令启动所述从管理节点的服务故障检测脚本。
6.一种数据库故障管理装置,用于实现如权利要求1至5中任意一项所述的数据库故障管理方法,其特征在于,所述装置包括:
从管理节点配置模块,用于获取数据库集群的主管理节点,并根据所述主管理节点,配置所述数据库集群的从管理节点;
异常状态检测模块,用于利用预设的服务检测脚本检测所述主管理节点是否出现服务管理异常状态;
主管理节点故障管理模块,用于在检测到所述主管理节点未出现服务管理异常状态时,利用所述主管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述主管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理;
从管理节点故障管理模块,用于在检测到所述主管理节点出现服务管理异常状态时,利用所述从管理节点中的服务故障检测脚本检测所述数据库集群中的主数据库是否出现服务故障,并在所述数据库集群中的主数据库出现服务故障时,利用所述从管理节点中的服务故障恢复脚本将所述数据库集群中的从数据库作为所述数据库集群的主数据库,以完成对所述数据库集群的故障管理。
7.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至5中任意一项所述的数据库故障管理方法。
8.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任意一项所述的数据库故障管理方法。
CN202210445749.1A 2022-04-26 2022-04-26 数据库故障管理方法、装置、电子设备及存储介质 Active CN114785789B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210445749.1A CN114785789B (zh) 2022-04-26 2022-04-26 数据库故障管理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210445749.1A CN114785789B (zh) 2022-04-26 2022-04-26 数据库故障管理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN114785789A CN114785789A (zh) 2022-07-22
CN114785789B true CN114785789B (zh) 2024-01-16

Family

ID=82433228

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210445749.1A Active CN114785789B (zh) 2022-04-26 2022-04-26 数据库故障管理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114785789B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108710673A (zh) * 2018-05-17 2018-10-26 招银云创(深圳)信息技术有限公司 实现数据库高可用方法、系统、计算机设备和存储介质
CN108833131A (zh) * 2018-04-25 2018-11-16 北京百度网讯科技有限公司 分布式数据库云服务的系统、方法、设备和计算机存储介质
CN111460039A (zh) * 2020-04-07 2020-07-28 中国建设银行股份有限公司 关系型数据库处理系统、客户端、服务器及方法
CN111581287A (zh) * 2020-05-07 2020-08-25 上海茂声智能科技有限公司 一种数据库管理的控制方法、系统和存储介质
CN111597079A (zh) * 2020-05-21 2020-08-28 山东汇贸电子口岸有限公司 针对MySQL Galera集群故障的检测和恢复方法及系统
CN111679925A (zh) * 2019-03-11 2020-09-18 阿里巴巴集团控股有限公司 数据库故障处理方法、装置、计算设备和存储介质
CN111966520A (zh) * 2020-08-10 2020-11-20 上海中通吉网络技术有限公司 数据库高可用切换方法、设备及系统
CN114116912A (zh) * 2022-01-25 2022-03-01 北京浩瀚深度信息技术股份有限公司 一种基于Keepalived实现数据库高可用的方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108833131A (zh) * 2018-04-25 2018-11-16 北京百度网讯科技有限公司 分布式数据库云服务的系统、方法、设备和计算机存储介质
CN108710673A (zh) * 2018-05-17 2018-10-26 招银云创(深圳)信息技术有限公司 实现数据库高可用方法、系统、计算机设备和存储介质
CN111679925A (zh) * 2019-03-11 2020-09-18 阿里巴巴集团控股有限公司 数据库故障处理方法、装置、计算设备和存储介质
CN111460039A (zh) * 2020-04-07 2020-07-28 中国建设银行股份有限公司 关系型数据库处理系统、客户端、服务器及方法
CN111581287A (zh) * 2020-05-07 2020-08-25 上海茂声智能科技有限公司 一种数据库管理的控制方法、系统和存储介质
CN111597079A (zh) * 2020-05-21 2020-08-28 山东汇贸电子口岸有限公司 针对MySQL Galera集群故障的检测和恢复方法及系统
CN111966520A (zh) * 2020-08-10 2020-11-20 上海中通吉网络技术有限公司 数据库高可用切换方法、设备及系统
CN114116912A (zh) * 2022-01-25 2022-03-01 北京浩瀚深度信息技术股份有限公司 一种基于Keepalived实现数据库高可用的方法

Also Published As

Publication number Publication date
CN114785789A (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
US10152382B2 (en) Method and system for monitoring virtual machine cluster
US20070038885A1 (en) Method for operating an arrangement of a plurality of computers in the event of a computer failure
CN113360579A (zh) 数据库高可用处理方法、装置、电子设备及存储介质
CN105468717A (zh) 数据库操作方法和装置
CN111651471A (zh) 目标数据查询方法、装置、电子设备及存储介质
CN111625252A (zh) 集群的升级维护方法、装置、电子设备及存储介质
CN114816820A (zh) chproxy集群故障修复方法、装置、设备及存储介质
CN115118738B (zh) 基于rdma的灾备方法、装置、设备及介质
CN111538573A (zh) 异步任务处理方法、装置及计算机可读存储介质
CN111858161A (zh) 云主机的容灾方法、装置、设备及计算机可读存储介质
CN114785789B (zh) 数据库故障管理方法、装置、电子设备及存储介质
CN114185502B (zh) 基于产线环境的日志打印方法、装置、设备及介质
CN115687384A (zh) Uuid标识生成方法、装置、设备及存储介质
CN114385453A (zh) 数据库集群异常处理方法、装置、设备及介质
CN114237982A (zh) 系统灾备切换方法、装置、设备及存储介质
CN114371962A (zh) 数据采集方法、装置、电子设备及存储介质
CN114510400A (zh) 任务执行方法、装置、电子设备及存储介质
CN117851520B (zh) 证券核心交易引擎的数据同步方法、系统、设备及介质
CN113542387B (zh) 系统发布方法、装置、电子设备及存储介质
CN114706715B (zh) 一种基于bmc的分布式raid的控制方法、装置、设备及介质
CN116860508B (zh) 分布式系统软件缺陷连续自愈方法、装置、设备及介质
CN113656208B (zh) 分布式存储系统数据处理方法、装置、设备及存储介质
CN116401104A (zh) 应用数据源切换方法、装置、设备及介质
CN114185777A (zh) 基于场景链的测试方法、装置、设备及介质
CN116820988A (zh) 分布式中间件系统高可用测试方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20231214

Address after: 730050 27th floor, Lanzhou central office building, No.16 Xijin West Road, Qilihe district, Lanzhou City, Gansu Province

Applicant after: Yongcheng Hengyi Network Technology Co.,Ltd.

Address before: Room 202, Block B, Aerospace Micromotor Building, No. 7 Langshan 2nd Road, Xili Street, Nanshan District, Shenzhen City, Guangdong Province, 518057

Applicant before: Shenzhen LIAN intellectual property service center

Effective date of registration: 20231214

Address after: Room 202, Block B, Aerospace Micromotor Building, No. 7 Langshan 2nd Road, Xili Street, Nanshan District, Shenzhen City, Guangdong Province, 518057

Applicant after: Shenzhen LIAN intellectual property service center

Address before: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong

Applicant before: PING AN PUHUI ENTERPRISE MANAGEMENT Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant