一种MySQL高可用性的实现方法技术

技术编号:31630243 阅读:21 留言:0更新日期:2021-12-29 19:08
本发明专利技术提供了一种MySQL高可用性的实现方法,包括以下步骤;S1、搭建MySQL主从服务器;S2、应用系统分别创建与主从MySQL服务器的连接,并维护一个主服务器信息、状态的公共资源与连接的绑定关系,根据主服务器的状态去获取连接,应用系统即为后台服务器;S3、应用系统开启一个子进程,通过定时配置检测MySQL主从机器的活动状态;S4、当定时配置检测到主MySQL服务器恢复时,通过文件传输脚本从MySQL从服务器上同步数据文件到MySQL主服务器,并切换回步骤S2中的主机器状态。本发明专利技术有益效果:一种MySQL高可用性的实现方法可以有效利用MySQL自身支持的主从复制来保证数据的准确性,又可以通过自定义定时任务在主机器发生故障时,自动切换数据源,简单灵活的达成MySQL高可用的目的。目的。目的。

【技术实现步骤摘要】
一种MySQL高可用性的实现方法


[0001]本专利技术属于APP后端
,尤其是涉及一种MySQL高可用性的实现方法。

技术介绍

[0002]目前现有的应用系统使用MySQL进行数据存储时,往往会面对单机MySQL如果宕机致使整个系统瘫痪的问题,及时搭建MySQL主从,仅仅起到备份数据的作用,无法支持系统自动切换数据库,因此目前现有技术存在以下问题:MySQL主从同步,只能做到备份数据的作用,当主机器发生故障,系统无法自动切换数据库,从而瘫痪;MySQL cluster集群虽然能自动切换数据库,但是有诸多限制:不支持外键,数据行不能超过8K,部署、管理、配置很复杂,备份和恢复不方便等问题,因此亟需一种MySQL高可用性的实现方法。

技术实现思路

[0003]有鉴于此,本专利技术旨在提出一种MySQL高可用性的实现方法,提出了解决应用系统中对MySQL进行使用时高可用的需要提出的解决方案。
[0004]为达到上述目的,本专利技术的技术方案是这样实现的:
[0005]第一方面本方案公开了一种MySQL高可用性的实现方法,包括以下步骤;
[0006]S1、搭建MySQL主从服务器;
[0007]S2、应用系统分别创建与主从MySQL服务器的连接,并维护一个主服务器信息、状态的公共资源与连接的绑定关系,根据主服务器的状态去获取连接,应用系统即为后台服务器;
[0008]S3、应用系统开启一个子进程,通过定时配置检测MySQL主从机器的活动状态;
[0009]S4、当定时配置检测到主MySQL服务器恢复时,通过文件传输脚本从MySQL从服务器上同步数据文件到MySQL主服务器,并切换回步骤S2中的主机器状态。
[0010]进一步的,在步骤S2中,根据主服务器的状态去获取的连接即为与主MySQL服务器建立的连接。
[0011]进一步的,在步骤S3中,应用系统开启的子进程即为定时任务。
[0012]进一步的,在步骤S3中,当定时任务检测到MySQL主机器故障后,更新步骤S2中的公共资源即主机器的状态信息。
[0013]进一步的,在步骤S3中,更新的步骤S2中的公共资源即为主机器的状态信息。
[0014]进一步的,应用系统在访问MySQL主从服务器时只需要根据主机器状态选择对应的连接,保证了只要有一台机器还存活即可用,即实现了MySQL的高可用。
[0015]进一步的,在步骤S4中,还可以通过连接MySQL的后台服务器通过SQL指令进行数据同步。
[0016]第二方面本方案公开了一种电子设备,包括处理器以及与处理器通信连接,且用于存储所述处理器可执行指令的存储器,所述处理器用于执行第一方面所述的一种MySQL高可用性的实现方法。
[0017]第三方面本方案公开了一种服务器,包括至少一个处理器,以及与所述处理器通信连接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,以使所述至少一个处理器执行第一方面所述的一种MySQL高可用性的实现方法。
[0018]第四方面本方案公开了一种计算机可读取存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的一种MySQL高可用性的实现方法。
[0019]相对于现有技术,本专利技术所述的一种MySQL高可用性的实现方法具有以下有益效果:
[0020]本专利技术所述的一种MySQL高可用性的实现方法可以有效利用MySQL自身支持的主从复制来保证数据的准确性,又可以通过自定义定时任务在主机器发生故障时,自动切换数据源,简单灵活的达成MySQL高可用的目的。
附图说明
[0021]构成本专利技术的一部分的附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:
[0022]图1为本专利技术实施例所述的一种MySQL高可用性的实现方法示意图。
具体实施方式
[0023]需要说明的是,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相互组合。
[0024]下面将参考附图并结合实施例来详细说明本专利技术。
[0025]如图1所示,本方案公开了一种MySQL高可用性的实现方法,包括以下步骤;
[0026]S1、搭建MySQL主从服务器;
[0027]S2、应用系统分别创建与主从MySQL服务器的连接,并维护一个主服务器信息、状态的公共资源与连接的绑定关系,根据主服务器的状态去获取连接,应用系统即为后台服务器;
[0028]S3、应用系统开启一个子进程,通过定时配置检测MySQL主从机器的活动状态;
[0029]S4、当定时配置检测到主MySQL服务器恢复时,通过文件传输脚本从MySQL从服务器上同步数据文件到MySQL主服务器,并切换回步骤S2中的主机器状态。
[0030]在步骤S2中,根据主服务器的状态去获取的连接即为与主MySQL服务器建立的连接。
[0031]在步骤S3中,应用系统开启的子进程即为定时任务。
[0032]在步骤S3中,当定时任务检测到MySQL主机器故障后,更新步骤S2中的公共资源即主机器的状态信息。
[0033]在步骤S3中,更新的步骤S2中的公共资源即为主机器的状态信息。
[0034]应用系统在访问MySQL主从服务器时只需要根据主机器状态选择对应的连接,保证了只要有一台机器还存活即可用,即实现了MySQL的高可用。
[0035]在步骤S4中,还可以通过连接MySQL的后台服务器通过SQL指令进行数据同步。
[0036]同时本方案还公开了一种电子设备,包括处理器以及与处理器通信连接,且用于
存储所述处理器可执行指令的存储器,所述处理器用于执行第一方面所述的一种MySQL高可用性的实现方法。
[0037]同时本方案还公开了一种服务器,包括至少一个处理器,以及与所述处理器通信连接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,以使所述至少一个处理器执行第一方面所述的一种MySQL高可用性的实现方法。
[0038]同时本方案还公开了一种计算机可读取存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的一种MySQL高可用性的实现方法。
[0039]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本专利技术的范围。
[0040]在本申请所提供的几个实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种MySQL高可用性的实现方法,其特征在于,包括以下步骤;S1、搭建MySQL主从服务器;S2、应用系统分别创建与主从MySQL服务器的连接,并维护一个主服务器信息、状态的公共资源与连接的绑定关系,根据主服务器的状态去获取连接,应用系统即为后台服务器;S3、应用系统开启一个子进程,通过定时配置检测MySQL主从机器的活动状态;S4、当定时配置检测到主MySQL服务器恢复时,通过文件传输脚本从MySQL从服务器上同步数据文件到MySQL主服务器,并切换回步骤S2中的主机器状态。2.根据权利要求1所述的一种MySQL高可用性的实现方法,其特征在于:在步骤S2中,根据主服务器的状态去获取的连接即为与主MySQL服务器建立的连接。3.根据权利要求1所述的一种MySQL高可用性的实现方法,其特征在于:在步骤S3中,应用系统开启的子进程即为定时任务。4.根据权利要求1所述的一种MySQL高可用性的实现方法,其特征在于:在步骤S3中,当定时任务检测到MySQL主机器故障后,更新步骤S2中的公共资源即主机器的状态信息。5.根据权利要求1所述的一种MySQL高可用性的实现方法,其特征在于:在步骤S3中,更新的步骤S2中的公共资源即为主机器...

【专利技术属性】
技术研发人员:王鹏凯
申请(专利权)人:紫光云技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1