CN116467120A - 主主架构的数据库部署方法、数据库访问方法及装置 - Google Patents
主主架构的数据库部署方法、数据库访问方法及装置 Download PDFInfo
- Publication number
- CN116467120A CN116467120A CN202310216929.7A CN202310216929A CN116467120A CN 116467120 A CN116467120 A CN 116467120A CN 202310216929 A CN202310216929 A CN 202310216929A CN 116467120 A CN116467120 A CN 116467120A
- Authority
- CN
- China
- Prior art keywords
- node
- database
- main
- mysql database
- mysql
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000009434 installation Methods 0.000 claims abstract description 7
- 238000012544 monitoring process Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 14
- 238000007667 floating Methods 0.000 claims description 13
- 238000003745 diagnosis Methods 0.000 claims description 11
- 230000001360 synchronised effect Effects 0.000 claims description 10
- 230000006870 function Effects 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 5
- 238000013475 authorization Methods 0.000 claims description 4
- 238000000926 separation method Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 14
- 238000007726 management method Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 9
- 230000002159 abnormal effect Effects 0.000 description 7
- 230000006855 networking Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 230000010076 replication Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请涉及一种主主架构的数据库部署方法、数据库访问方法及装置。其中,部署方法包括:获取创建主主架构所需的配置文件;根据安装规则逐一安装配置文件后,获取节点管理平台以及至少两个MySQL数据库;对节点管理平台以及MySQL数据库执行预设部署配置后,以使节点管理平台控制MySQL数据库之间两两互为主备关系。采用本部署方法能够在主节点出现预设故障时,切换热备节点继续执行主节点的工作任务,实现故障秒级自动切换、双机双工方式(互备互援)、读写分离、横向易扩展的优势。
Description
技术领域
本申请涉及MySQL技术领域,特别是涉及一种主主架构的数据库部署方法、数据库访问方法及装置。
背景技术
随着车联网技术的发展,车内交互数据使用MySQL作为主流的数据访问存储工具,现常用MySQL主从架构对数据进行存储及备份,但是,当MySQL主节点出现故障时,MySQL从节点由于无法自动升级为主节点,使得数据无法正常写入的情况,从而导致业务停摆。因此,现有相关技术满足不了车联网场景下对MySQL数据库架构的高读写、高性能、高可用的需求。
发明内容
基于此,有必要针对上述技术问题,提供一种主主架构的数据库部署方法、数据库访问方法及装置,用于解决现有MySQL数据库主从架构无法在主节点MySQL数据库出现异常时稳定工作的技术问题,通过主主架构的数据库,在出现主节点异常时,可以自动秒级切换热备节点,稳定控制数据库业务进程的有益效果。
本申请提供了一种主主架构的数据库部署方法,所述方法包括:
获取创建主主架构所需的配置文件;
根据安装规则逐一安装所述配置文件后,获取节点管理平台以及至少两个MySQL数据库;
对所述节点管理平台以及所述MySQL数据库执行预设部署配置后,以使所述节点管理平台控制所述MySQL数据库之间两两互为主备关系。
在其中一个实施例中,所述节点管理平台包括对应于各所述MySQL数据库的代理配置项和接入配置项;
所述对节点管理平台以及所述MySQL数据库执行预设部署配置的步骤,包括:
对各所述MySQL数据库执行节点自身的预设配置;
对各所述MySQL数据库执行节点之间的关联配置;
对各所述代理配置项执行HAProxy配置,以监听各所述MySQL数据库的运行状态,并将监听结果反馈给所述接入配置项,以控制各所述MySQL数据库的任务分配;
对各所述接入配置项执行Keepalived配置,以根据所述监听结果分配浮动虚拟IP,使至少一个所述MySQL数据库执行主节点的工作任务,至少另一个所述MySQL数据库执行热备节点的工作任务。
在其中一个实施例中,所述对各MySQL数据库执行节点自身的预设配置的步骤,包括:
创建所述MySQL数据库作为主节点以及热备节点时的配置文件,并启动MySQL服务。
在其中一个实施例中,所述对各MySQL数据库执行节点之间的关联配置的步骤,包括:
创建所述MySQL数据库节点之间的关联账号,并通过授权以查看master状态;
启动slave机制,以配置节点之间的同步信息;
当主节点和热备节点处于同步状态时,开启GTID功能。
在其中一个实施例中,所述对各代理配置项执行HAProxy配置,以监听各所述MySQL数据库的运行状态,并将监听结果反馈给所述接入配置项,以控制各所述MySQL数据库的任务分配的步骤,包括:
通过HAProxy增加MySQL数据库的监听代理,以监听作为主节点以及作为热备节点的MySQL数据库的运行状态;
根据运行状态创建HAProxy服务的监测脚本。
在其中一个实施例中,所述对接入配置项执行Keepalived配置,以根据所述监听结果分配浮动虚拟IP,使至少一个所述MySQL数据库执行主节点的工作任务,至少另一个所述MySQL数据库执行热备节点的工作任务的步骤,包括:
通过keepalived分配MySQL数据库作为主节点或者热备节点的工作任务,并配置浮动虚拟IP在内的配置信息。
本申请提供一种主主架构的数据库访问方法,所述方法包括:
接收数据访问请求;
根据所述数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,并反馈访问状态;
根据所述访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息;
根据所述故障信息,将所述当前主节点的工作任务切换或分担至所述主主架构部署的热备节点上,以作为新的主节点;
将所述数据访问请求指向所述新的主节点上,继续执行访问MySQL数据库。
本申请提供一种主主架构的数据库访问装置,所述装置包括:
请求接收模块,用于接收数据访问请求;
数据读取模块,用于根据所述数据访问请求,访问主主架构部署中作为主节点的MySQL数据库,或者访问新的主节点的MySQL数据库,并反馈访问状态;
故障反馈模块,用于根据所述访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息;
节点切换模块,用于根据所述故障信息,将所述当前主节点的工作任务切换或分担至所述主主架构部署的热备节点上,以作为新的主节点。
本申请提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收数据访问请求;
根据所述数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,并反馈访问状态;
根据所述访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库发生故障,反馈故障信息;
根据所述故障信息,将所述当前主节点的浮动虚拟IP切换至所述主主架构部署的热备节点上,以作为新的主节点;
将所述数据访问请求指向所述新的主节点上,以执行访问新的主节点的MySQL数据库。
本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收数据访问请求;
根据所述数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,并反馈访问状态;
根据所述访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库发生故障,反馈故障信息;
根据所述故障信息,将所述当前主节点的浮动虚拟IP切换至所述主主架构部署的热备节点上,以作为新的主节点;
将所述数据访问请求指向所述新的主节点上,以执行访问新的主节点的MySQL数据库。
上述主主架构的数据库部署方法、数据库访问方法及装置,具有以下技术效果:
1)由于采用了通过现有配置文件,直接安装部署配置主主架构的数据库,在降低部署成本的基础上,控制MySQL数据库之间两两互为主备关系,操作简单实用性强。
2)由于采用了主主架构的数据库,且MySQL数据库之间两两互为主备关系,当主主架构的数据库对外业务服务的主节点出现异常时,能够秒级切换热备节点,热备节点自动替换异常的主节点,或者热备节点分担承接起异常主节点的部分工作任务。
3)由于采用了主主架构的数据库,满足数据运行的高需求,实现故障秒级自动切换、双机双工方式(互备互援)、读写分离、横向易扩展等优势。保障了业务的连续性、健壮性和稳定性。
附图说明
图1为一个实施例中的一种主主架构的数据库应用环境示意图;
图2为一个实施例中的一种主主架构的数据库部署方法的流程示意图;
图3为一个实施例中的一种主主架构的应用连接架构示意图;
图4为一个实施例中的一种MySQL主主复制架构示意图;
图5为一个实施例中的一种主节点同步测试的预设信息示意图;
图6为一个实施例中的一种热备节点同步测试的预设信息示意图;
图7为一个实施例中的一种主主架构的数据库部署流程示意图;
图8为一个实施例中的一种主主架构的数据库访问方法的流程示意图;
图9为一个实施例中的一种主主架构的数据库访问装置的流程示意图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
针对背景技术进一步补充说明,近年来,随着新能源及智能网联技术在汽车市场的介入,智能网联汽车已成为汽车企业应对市场变化的主要产品。智能网联汽车行业的兴起,给汽车企业带来了新的机遇和挑战。借助于智能网联技术,逐渐形成了车与车、车与路、车与人、车与云平台等全方位的网络链接,将车内网、车际网和车载移动互联网进行融合,形成了一种新兴的信息通信技术车联网。其中,通过车联网技术可以远程对车辆下发控制指令、远程获取车辆状态信息、实时共享车辆状态等,实现了人、车无距离交互。车联网技术在实现人、车无距离交互的同时,也产生了大量的交互数据,庞大的交互数据给车联网业务带来了极大的挑战。因此,场景下在数据访问时,不仅要满足大量的读写需求、数据热备需求,还要满足数据存储的高性能、高可用。而现有MySQL主从架构满足不了车联网场景下对MySQL数据库的高读写、高性能、高可用的需求。
基于此,本申请提供了一种主主架构的数据库设计,解决了MySQL主从架构中一个主节点带来的访问单点故障问题,解决主从架构中故障无法自动切换的问题;实现了故障节点自动秒级切换、减少主从切换的故障处理时间、增加了MySQL集群的高可用,为车联网业务的稳定运行提供保驾护航。
实施例1
请参考附图1,附图1为本实施例所涉及一种主主架构的数据库应用环境示意图。该应用环境为一车联网平台,该车联网平台包括:云服务器10、终端20、第一数据库31、第二数据库31。其中,终端20可以是台式电脑、笔记本电脑、平板电脑、智能手机或者其他可实施网络连接的电子设备,在此不进行限定。终端20可以为APP客户端、Web客户端、用户客户端以及其他客户端。
其中,云服务器10与终端20、第一数据库31、第二数据库32之间建立网络连接。在一种实施方式中,云服务器10与终端20、第一数据库31、第二数据库32之间通过2G/3G/4G/5G、WIFI等建立网络连接。通过终端20向云服务器10发起数据访问请求,云服务器10根据数据访问请求,对第一数据库31或第二数据库32执行读取操作或写入操作。在一种实施例中,利用云服务器10、第一数据库31、第二数据库32搭建主主架构的数据库,其中,在云服务器10中加载安装节点管理平台,以便根据预设访问逻辑选择第一数据库31或第二数据库32。
实施例2
请参考附图2-3,附图2为根据本实施例所涉及的一种主主架构的数据库部署方法的流程示意图,附图3为本实施例所涉及的主主架构的应用连接架构示意图。
本实施例提供的一种主主架构的数据库部署方法,该方法包括以下步骤:
步骤S101,获取创建主主架构所需的配置文件;
步骤S102,根据安装规则逐一安装配置文件后,获取节点管理平台以及至少两个MySQL数据库;
步骤S103,对节点管理平台以及MySQL数据库执行预设部署配置后,以使节点管理平台控制MySQL数据库之间两两互为主备关系。
在一种实施例中,步骤S101,获取创建主主架构所需的配置文件至少包括:MySQL安装包、keepalived组件以及HAProxy组件。
在一种实施例中,步骤S102,根据安装规则逐一安装配置文件后,获取节点管理平台以及至少两个MySQL数据库的步骤,包括:
进一步地,本实施例,利用MySQL 5.7社区版镜像源以及yum命令,一键安装MySQL数据库,以此获取两个MySQL数据库Master-1、Master-2。
获取节点管理平台时,关闭系统自带的防火墙,使用yum命令一键安装keepalived组件和haproxy组件。本实施例中的节点管理平台不限定为一个软件平台,具有keepalived、haproxy服务即可,可以是独立的keepalived服务或者haproxy服务。
在一种实施例中,节点管理平台包括对应于各MySQL数据库的代理配置项和接入配置项。进一步地,步骤S103中,对节点管理平台以及MySQL数据库执行预设部署配置的步骤,包括以下步骤。
步骤S301,对各MySQL数据库执行节点自身的预设配置。
步骤S302,对各MySQL数据库执行节点之间的关联配置。
步骤S303,对各代理配置项执行HAProxy配置,以监听各MySQL数据库的运行状态,并将监听结果反馈给接入配置项,以控制各MySQL数据库的任务分配。
步骤S304,对各接入配置项执行Keepalived配置,以根据监听结果分配浮动虚拟IP,使至少一个MySQL数据库执行主节点的工作任务,至少另一个MySQL数据库执行热备节点的工作任务。
在一种实施例中,步骤S301,对各MySQL数据库执行节点自身的预设配置的步骤,包括:
创建MySQL数据库作为主节点以及热备节点的配置文件,并启动MySQL服务。
在一种实施例中,预设配置还包括:记录MySQL数据库的更新情况。比如,开启二进制日志;启动MySQL服务后,可设置开机自启。
在另一种实施例中,预设配置还包括:修改MySQL数据库的root用户初始密码。MySQL数据库的默认root用户没有密码,采用set password命令设置密码,登录MySQL数据库,利用格式:“mysql>set password for用户名
@localhost=password('新密码')”。修改用户名密码,比如,“mysql>setpassword for root@localhost=password('123')”。或者,利用mysql admin命令,格式:mysql admin-u用户名-p。
在一种实施例中,步骤S302,对各MySQL数据库执行节点之间的关联配置的步骤,包括:
创建节点之间的关联账号,并通过授权以查看master状态;
启动slave机制,以配置节点之间的同步信息;
当主节点和热备节点处于同步状态时,开启GTID功能。
进一步说明,当MySQL数据库作为主节点时,创建连接热备节点的账号,并通过授权以查看本节点的master状态;作为主节点的MySQL数据库配置热备节点的同步信息,并启动slave机制。通过对各MySQL数据库执行节点之间的关联配置,以实现多节点复制,实现数据多副本热备。
当MySQL数据库作为热备节点时,创建连接主节点的账号,并授权以查看master状态;作为热备节点的MySQL数据库配置主节点的同步信息,并启动slave机制。
在一种实施例中,当主节点和热备节点处于同步状态时,开启GTID功能的步骤,查看主节点和热备节点的同步状态,命令返回预设信息,则表示主主同步配置正常。其中,
主节点Master-1和热备节点Master-2之间关联后,实现如图4所示的MySQL主主复制架构示意图。主节点和热备节点同步后,同步状态展示的预设信息参考附图5-6所示,“Slave_IO_Running:Yes Slave_SQL_Running:Yes”。
GTID功能为全局事务标识符。其中,GTID是创建的唯一标识符,基于事务的数据复制,可以识别和跟踪源服务器上提交的每个事务,在源和拓扑服务器上均唯一;它在源服务器上提交并由任何副本应用,源和副本之间始终保留GTID,只要在源上提交的所有事务也在副本上提交,在源上提交的事务只能在副本上应用一次,就可以保证两者之间的一致性。
在一种实施例中,步骤S303,对各代理配置项执行HAProxy配置,以监听各MySQL数据库的运行状态,并将监听结果反馈给接入配置项,以控制各MySQL数据库的任务分配的步骤,包括:
通过HAProxy增加MySQL数据库的监听代理,以监听作为主节点以及作为热备节点的MySQL数据库的运行状态;
根据运行状态创建HAProxy服务的监测脚本。
进一步说明,本实施例中利用HAProxy服务对于MySQL数据库的监听代理,使其中一个MySQL数据库为主节点,另一个MySQL数据库作为热备节点。通过HAProxy增加MySQL数据库的监听代理,故障节点自动秒级切换,实现故障自愈能力,无需人工干预。
在一种实施例中,启动HAProxy服务时,还可以设置开机自启。
步骤S304,对各接入配置项执行Keepalived配置,以根据监听结果分配浮动虚拟IP,使至少一个MySQL数据库执行主节点的工作任务,至少另一个MySQL数据库执行热备节点的工作任务。
通过keepalived分配MySQL数据库作为主节点或热备节点的工作任务,并配置浮动虚拟IP在内的配置信息。
本实施例中的热备节点除了替代主节点执行主节点的任务,还可以分担主节点的任务,也就是说,当主节点的MySQL数据库无法执行工作任务,或者工作任务超出负载量时,通过热备节点替换或分担工作任务即可,因此可以实现多节点同时写入,控制节点负载均衡,降低单节点写入压力,若有多个热备节点,那么可以实现利用多个热备节点同步工作,横向易扩展,数据多节点备份,保障数据完整性。
在一种实施例中,启动keepalived服务后,还设置开机自启。
进一步说明,通过keepalived分配MySQL数据库作为主节点的步骤中,配置MySQL数据库为keepalived的主节点,并配置浮动虚拟IP为10.39.111.10等相关配置。
通过keepalived分配MySQL数据库作为热备节点的步骤中,配置MySQL数据库为keepalived的热备节点,并配置浮动虚拟IP为10.39.111.10等相关配置。
在一种实施例中,预先部署两个MySQL数据库,分别为Master-1、Master-2。根据上述部署阐述,参考附图7所示,本实施例给出步骤(1)-(8),以阐述主主架构的数据库的部署流程。
(1)全局初始配置,安装keepalived服务、haproxy服务以及两个MySQL数据库Master-1、Master-2。
(2)创建Master-1作为主节点、Master-2作为热备节点的配置文件。
(3)创建热备节点连接主节点、主节点连接热备节点的配置。
(4)将主节点配置为热备节点的slave、热备节点配置为主节点的slave。
(5)查看主节点/热备节点的同步状态。
(6)HAProxy服务添加Master-1、Master-2的监听代理,其中,Master-1为主节点、Master-2为热备节点。
(7)创建HAProxy服务监测脚本;
(8)Keepalived服务添加主节点/热备节点的配置信息。
上述主主架构的数据库部署方法中,具有以下技术效果:预先通过主主架构的配置文件,安装部署主主架构的数据库,以使节点管理平台控制MySQL数据库之间两两互为主备关系,当MySQL主主架构中对外提供业务(读写)服务的主节点出现故障时,热备节点能够秒级切换自动替换故障节点,并承担起故障节点的工作任务。当主节点的负载量超过预设量时,将主节点的部分工作任务分担给热备节点,以此降低主节点的负载需求。比如,主节点的写入压力比较大时,将部分写入需求通过热备节点写入,以达到主节点降低数据写入压力的目的。采用了主主架构,可以满足数据运行的高需求,实现故障秒级自动切换、双机双工方式(互备互援)、读写分离、横向易扩展等优势,保障了数据库相关业务的连续性、健壮性和稳定性。
本实施例采用主主架构的数据库,解决了现有MySQL主从架构中,一个主节点带来的访问单点故障问题,解决了主从架构中故障无法自动切换的问题;实现了故障节点自动秒级切换、减少主从切换的故障处理时间、增加了MySQL集群的高可用,为车联网业务的稳定运行提供保驾护航。
实施例3
请参考附图8,附图8为根据本发明所涉及一种主主架构的数据库访问方法的流程示意图,提供了一种主主架构的数据库访问方法,采用实施例3提供的主主架构。该方法包括以下步骤:
步骤S401,接收数据访问请求;
步骤S402,根据数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,并反馈访问状态;
步骤S403,根据访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息;
步骤S404,根据故障信息,将当前主节点的工作任务切换或分担至主主架构部署的热备节点上,以作为新的主节点;
步骤S405,将数据访问请求指向新的主节点上,继续执行访问MySQL数据库。
上述主主架构的数据库访问方法中,由于采用了主主架构的数据库,且MySQL数据库之间互为主备关系,当主主架构的数据库对外业务服务的主节点出现异常时,能够秒级切换热备节点,热备节点自动替换异常的主节点,或者热备节点分担承接起异常主节点的部分工作任务。由于采用了主主架构的数据库,满足数据运行的高需求,实现故障秒级自动切换、双机双工方式(互备互援)、读写分离、横向易扩展等优势。保障了业务的连续性、健壮性和稳定性。
应该理解的是,虽然图2-8的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-8中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
实施例4
在一种实施例中,参考附图9所示,附图9为本发明提供的一种主主架构的数据库访问装置的结构框图。本实施例提供的一种主主架构的数据库访问装置包括:请求接收模块501、数据读取模块502、故障反馈模块503以及节点切换模块504。其中:
请求接收模块501用于接收数据访问请求;
数据读取模块502用于根据数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,或者访问新的主节点的MySQL数据库,并反馈访问状态;
故障反馈模块503用于根据访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息。
节点切换模块504用于根据故障信息,将当前主节点的工作任务切换或分担至主主架构部署的热备节点上,以作为新的主节点。
进一步说明,主主架构的数据库访问装置在工作过程中,通过请求接收模块接收数据访问请求;然后通过数据读取模块根据数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,并反馈访问状态;此时若作为主节点的MySQL数据库出现预设故障问题,比如访问不了当前主节点的MySQL数据库,或者当前主节点MySQL数据库的访问量超出预设负载量,那么访问状态显示异常,进而故障反馈模块根据访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息;而后通过节点切换模块根据故障信息,将当前主节点的工作任务切换或分担至主主架构部署的热备节点上,以作为新的主节点;再利用数据读取模块根据数据访问请求,继续执行访问主节点的MySQL数据库,并反馈访问状态。
关于主主架构的数据库访问装置的具体限定可以参见上文中对于主主架构的数据库访问方法的限定,在此不再赘述。上述主主架构的数据库访问装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储主主架构的数据库访问数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种主主架构的数据库访问方法。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收数据访问请求;根据数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,并反馈访问状态;根据访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息;根据故障信息,将当前主节点的工作任务切换或分担至主主架构部署的热备节点上,以作为新的主节点;将数据访问请求指向新的主节点上,继续执行访问MySQL数据库。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收数据访问请求;根据数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,并反馈访问状态;根据访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息;根据故障信息,将当前主节点的工作任务切换或分担至主主架构部署的热备节点上,以作为新的主节点;将数据访问请求指向新的主节点上,继续执行访问MySQL数据库。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种主主架构的数据库部署方法,其特征在于,所述方法包括:
获取创建主主架构所需的配置文件;
根据安装规则逐一安装所述配置文件后,获取节点管理平台以及至少两个MySQL数据库;
对所述节点管理平台以及所述MySQL数据库执行预设部署配置后,以使所述节点管理平台控制所述MySQL数据库之间两两互为主备关系。
2.根据权利要求1所述的主主架构的数据库部署方法,其特征在于,所述节点管理平台包括对应于各所述MySQL数据库的代理配置项和接入配置项;
所述对节点管理平台以及所述MySQL数据库执行预设部署配置的步骤,包括:
对各所述MySQL数据库执行节点自身的预设配置;
对各所述MySQL数据库执行节点之间的关联配置;
对各所述代理配置项执行HAProxy配置,以监听各所述MySQL数据库的运行状态,并将监听结果反馈给所述接入配置项,以控制各所述MySQL数据库的任务分配;
对各所述接入配置项执行Keepalived配置,以根据所述监听结果分配浮动虚拟IP,使至少一个所述MySQL数据库执行主节点的工作任务,至少另一个所述MySQL数据库执行热备节点的工作任务。
3.根据权利要求2所述的主主架构的数据库部署方法,其特征在于,所述对各MySQL数据库执行节点自身的预设配置的步骤,包括:
创建所述MySQL数据库作为主节点以及热备节点时的配置文件,并启动MySQL服务。
4.根据权利要求2所述的主主架构的数据库部署方法,其特征在于,所述对各MySQL数据库执行节点之间的关联配置的步骤,包括:
创建所述MySQL数据库节点之间的关联账号,并通过授权以查看master状态;
启动slave机制,以配置节点之间的同步信息;
当主节点和热备节点处于同步状态时,开启GTID功能。
5.根据权利要求2所述的主主架构的数据库部署方法,其特征在于,所述对各代理配置项执行HAProxy配置,以监听各所述MySQL数据库的运行状态,并将监听结果反馈给所述接入配置项,以控制各所述MySQL数据库的任务分配的步骤,包括:
通过HAProxy增加MySQL数据库的监听代理,以监听作为主节点以及作为热备节点的MySQL数据库的运行状态;
根据运行状态创建HAProxy服务的监测脚本。
6.根据权利要求2所述的主主架构的数据库部署方法,其特征在于,所述对接入配置项执行Keepalived配置,以根据所述监听结果分配浮动虚拟IP,使至少一个所述MySQL数据库执行主节点的工作任务,至少另一个所述MySQL数据库执行热备节点的工作任务的步骤,包括:
通过keepalived分配MySQL数据库作为主节点或者热备节点的工作任务,并配置浮动虚拟IP在内的配置信息。
7.一种主主架构的数据库访问方法,其特征在于,所述方法包括:
接收数据访问请求;
根据所述数据访问请求,访问主主架构部署中作为当前主节点的MySQL数据库,并反馈访问状态;
根据所述访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息;
根据所述故障信息,将所述当前主节点的工作任务切换或分担至所述主主架构部署的热备节点上,以作为新的主节点;
将所述数据访问请求指向所述新的主节点上,继续执行访问MySQL数据库。
8.一种主主架构的数据库访问装置,其特征在于,所述装置包括:
请求接收模块,用于接收数据访问请求;
数据读取模块,用于根据所述数据访问请求,访问主主架构部署中作为主节点的MySQL数据库,或者访问新的主节点的MySQL数据库,并反馈访问状态;
故障反馈模块,用于根据所述访问状态对当前主节点进行故障诊断,以确定当前主节点的MySQL数据库出现预设故障问题,反馈故障信息;
节点切换模块,用于根据所述故障信息,将所述当前主节点的工作任务切换或分担至所述主主架构部署的热备节点上,以作为新的主节点。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310216929.7A CN116467120A (zh) | 2023-03-01 | 2023-03-01 | 主主架构的数据库部署方法、数据库访问方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310216929.7A CN116467120A (zh) | 2023-03-01 | 2023-03-01 | 主主架构的数据库部署方法、数据库访问方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116467120A true CN116467120A (zh) | 2023-07-21 |
Family
ID=87183160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310216929.7A Pending CN116467120A (zh) | 2023-03-01 | 2023-03-01 | 主主架构的数据库部署方法、数据库访问方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116467120A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112701A (zh) * | 2023-10-20 | 2023-11-24 | 武汉吧哒科技股份有限公司 | 分布式数据库中的节点切换方法、计算机设备及存储介质 |
-
2023
- 2023-03-01 CN CN202310216929.7A patent/CN116467120A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112701A (zh) * | 2023-10-20 | 2023-11-24 | 武汉吧哒科技股份有限公司 | 分布式数据库中的节点切换方法、计算机设备及存储介质 |
CN117112701B (zh) * | 2023-10-20 | 2024-01-19 | 武汉吧哒科技股份有限公司 | 分布式数据库中的节点切换方法、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4083786A1 (en) | Cloud operating system management method and apparatus, server, management system, and medium | |
CN109446169B (zh) | 一种双控磁盘阵列共享文件系统 | |
CN112291298B (zh) | 异构系统的数据传输方法、装置、计算机设备和存储介质 | |
CN111147274B (zh) | 为集群解决方案创建高度可用的仲裁集的系统和方法 | |
US11210150B1 (en) | Cloud infrastructure backup system | |
CN106452836B (zh) | 主节点设置方法及装置 | |
CN110213326B (zh) | 元数据节点集群的扩容方法、系统、设备和存储介质 | |
JP2021524104A (ja) | マスター・スタンドバイコンテナシステム切替 | |
CN113467873A (zh) | 虚拟机的调度方法、装置、电子设备及存储介质 | |
CN116467120A (zh) | 主主架构的数据库部署方法、数据库访问方法及装置 | |
CN111935244B (zh) | 一种业务请求处理系统及超融合一体机 | |
CN113515408A (zh) | 一种数据容灾方法、装置、设备及介质 | |
CN109254876A (zh) | 云计算系统中数据库的管理方法和装置 | |
CN113190619A (zh) | 分布式kv数据库的数据读写方法、系统、设备和介质 | |
CN109324549B (zh) | 一种双主控设备配置方法及双主控设备 | |
CN116389233B (zh) | 容器云管理平台主备切换系统、方法、装置和计算机设备 | |
CN115454359B (zh) | 固态硬盘访问控制方法、装置和计算机设备和存储介质 | |
CN111176886B (zh) | 一种数据库模式的切换方法、装置及电子设备 | |
CN107707398B (zh) | 云计算系统中管理物理主机的方法和装置 | |
CN114172917B (zh) | 一种分布式缓存系统及其部署的方法 | |
CN114936115A (zh) | 一种数据存储备份方法、装置、计算机设备和存储介质 | |
US9971532B2 (en) | GUID partition table based hidden data store system | |
CN111338848B (zh) | 故障应用副本处理方法、装置、计算机设备和存储介质 | |
WO2024051577A1 (zh) | 分布式系统部署方法、配置方法、系统、设备及介质 | |
CN112379845B (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 |