mysql NDBcluster数据库集群介绍、部署及配置

前言:

MySQL集群是一个无共享的、分布式节点架构的存储方案,旨在提供容错性和高性能。它由三个主要节点组成:管理节点(MGM)、数据节点和SQL节点。

  1. 管理节点(MGM)

    • 定义与用途:管理节点是MySQL Cluster的控制中心,负责管理集群内的其他节点。它提供配置数据,启动和停止节点,运行备份等。
    • 工作原理:管理节点会定期从其他节点收集信息,并基于这些信息来管理集群的状态。例如,当某个数据节点或SQL节点出现故障时,管理节点会检测到这种情况,并可能触发相应的恢复或容错机制。
    • 示例:在一个包含多个数据节点和SQL节点的集群中,管理节点负责确保所有节点都保持同步,并根据需要分配或重新分配工作负载。
  2. 数据节点

    • 定义与用途:数据节点是保存Cluster数据的节点。它们存储实际的数据,并处理与数据相关的操作(如插入、更新、删除等)。
    • 工作原理:数据节点使用NDB Cluster存储引擎来存储和管理数据。它们通过网络与其他节点(包括SQL节点和管理节点)进行通信,以确保数据的一致性和同步。当数据节点接收到来自SQL节点的请求时,它会执行相应的操作,并将结果返回给SQL节点。
    • 示例:在一个电子商务应用中,订单数据和用户数据可能存储在数据节点中。当用户提交订单时,SQL节点会向数据节点发送请求以更新订单状态。数据节点会执行此操作,并将更新后的订单数据返回给SQL节点。
  3. SQL节点

    • 定义与用途:SQL节点主要用于提供MySQL服务,作为访问Cluster数据的接口。客户端(如应用程序或数据库管理员)通过SQL节点与集群进行交互。
    • 工作原理:SQL节点接收来自客户端的请求,并将这些请求转发给适当的数据节点进行处理。然后,它将数据节点的响应返回给客户端。如果某个数据节点出现故障,SQL节点可以将请求转发到其他可用的数据节点,以确保高可用性。
    • 示例:在一个工资单应用程序中,员工可以通过SQL节点查询和更新他们的工资信息。当员工提交工资更改请求时,SQL节点会处理此请求,并将相应的更新操作转发给数据节点。数据节点会执行更新操作,并将结果返回给SQL节点,然后由SQL节点将结果返回给员工。

节点之间的关系与交互

这三个节点之间通过网络进行通信和交互。管理节点负责监控整个集群的状态,并根据需要调整配置或执行恢复操作。数据节点存储实际的数据,并处理与数据相关的操作。SQL节点作为客户端与集群之间的接口,负责接收请求、转发请求和处理响应。

当客户端向SQL节点发送请求时,SQL节点会根据请求的类型和内容将其转发给适当的数据节点。数据节点会执行请求中的操作,并将结果返回给SQL节点。然后,SQL节点将结果返回给客户端。如果某个数据节点出现故障,管理节点会检测到这种情况,并触发相应的容错机制(如将工作负载重新分配给其他数据节点)。

这种分布式架构使得MySQL集群能够提供高可用性和高性能。通过将多个节点组合在一起并共同处理请求,MySQL集群可以处理更多的并发请求,并减少单点故障的风险。

一、服务器规划

共四台服务器:一台管理节点,一台数据节点,两台SQL节点

服务器均为centos7 x86 64位虚拟机

管理节点:192.168.131.129

数据节点:192.168.131.132

SQL 节点: 192.168.131.131, 192.168.131.133

二、mysql-cluster安装包

下载地址:https://downloads.mysql.com/archives/cluster/

筛选条件:

Product Version: 7.6.7

Operating System: Linux-Generic

OS Version:看下方图片

点击后方的 Download 进行下载,国内下载较慢可以采用IDM, NDM等工具进行快速下载,

下载后的文件名称为: mysql-cluster-gpl-7.6.7-linux-glibc2.12-x86_64.tar.gz

三、服务器原mysql清理

上述四台服务器均需此操作

1.查看mysql安装的rpm包情况:

rpm -qa | grep mysql

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3032367.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Flask gevent启动报错UnicodeDecodeError

文章目录 环境代码报错Track解决思路 环境 acondana 24.1.2python 3.7.13 32bitflask 2.2.3gevent 21.8.0 代码 port 7236 logging.basicConfig(levellogging.INFO, # 控制台打印的日志级别filename./logs/app.log, # 将日志写入log_new.log文件中filemodea, # 模式&…

【4】STM32·FreeRTOS·中断管理

目录 一、什么是中断 二、中断优先级分组设置 2.1、中断优先级基本概念 2.2、中断优先级分组 2.3、FreeRTOS中断特点 三、中断相关寄存器 3.1、系统中断优先级配置寄存器 3.2、PendSV和Systick中断优先级的配置 3.3、中断屏蔽寄存器 四、FreeRTOS中断管理实验 一、什…

阿里云服务器在线安装nginx

⛰️个人主页: 蒾酒 🔥系列专栏:《nginx实战》 目录 内容简介 安装步骤 1.root用户登录连接阿里云服务器 2.在usr/local下新建nginx目录 3.安装 1安装下载工具 2下载nginx压缩包 3解压 4安装nginx依赖的库 5编译并安装 6启动nginx 7开启…

ShellCode详解三

直接进入正题。 在完成正式的shellcode代码导出之前,我们先手动的对代码进行导出,以使各位同学更加了解其原理。 手动注入shellcode 1、我们利用DLE工具找到上一节中我们生成的PE文件的代码段位置 上述图片就是我们的代码段位置 2、利用WinHex工具我…

Appium测试之获取appPackage和appActivity

appPackage和appActivity 进行appium自动化测试非常重要的两个参数,我们所测试的APP不同,这两个参数肯定也是不一样的。那如何快速的获取这APP的这两个参数呢?我这里介绍两个方法。 import org.openqa.selenium.remote.DesiredCapabilities;i…

韩国站群服务器在全球网络架构中的重要作用?

韩国站群服务器在全球网络架构中的重要作用? 在全球互联网的蓬勃发展中,站群服务器作为网络架构的核心组成部分之一,扮演着至关重要的角色。韩国站群服务器以其卓越的技术实力、优越的地理位置、稳定的网络基础设施和强大的安全保障能力,成…

docker(二):Centos安装docker

文章目录 1、安装docker2、启动docker3、验证 官方文档:https://docs.docker.com/engine/install/centos/ 1、安装docker 下载依赖包 yum -y install gcc yum -y install gcc-c yum install -y yum-utils设置仓库 yum-config-manager --add-repo http://mirrors…

端到端将重塑智驾?获10亿美金融资,解密英国AI独角兽Wayve

‍作者 |张马也 编辑 |德新 就在前两天,英国AI公司Wayve宣布获得新一轮10.5亿美元融资,投资方为软银、英伟达和现有投资人微软,可以说是顶级豪华阵容。 作为一家英国公司,Wayve这轮融资也创造了英国AI公司有史以来最大的单笔融资…

北斗卫星在农田测量中的广泛应用

北斗卫星在农田测量中的广泛应用 随着科技的不断发展和进步,北斗卫星在农田测量中的应用也越来越广泛。北斗卫星系统是我国自行研制的卫星导航定位系统,具有全球覆盖、高精度和高可靠性的特点,是农田测量领域不可或缺的重要工具。 首先&…

Laravel框架使用图片处理简单教程

PHP图片处理扩展包使用 文中使用的是Laravel框架,更多框架扩展包请点击传送门-》更多框架集成 Intervention Image 是一个开源的 PHP 图像处理和操作 库。它提供了一个更简单也更优雅的方式来创建/编辑/组合图像,并且支持最常见的两个图像处理库 GD Library 和 Im…

静态分析-RIPS-源码解析记录-01

token流扫描重构部分,这一部分主要利用php的token解析api解析出来的token流,对其中的特定token进行删除、替换、对于特定的语法结构进行重构,保持php语法结构上的一致性 解析主要在lib/scanner.php中通过Tokenizer这个类来实现,也就是在main…

机器学习面试篇

如何理解机器学习数据集的概念 数据集是机器学习的基础,它包括了用于训练和测试模型所需的数据。数据集通常以矩阵的形式存在,其中每一行代表一个样本(或实例),每一列代表一个特征(或属性)。…

SpringAMQP Work Queue 工作队列

消息模型: 代码模拟: 相较于之前的基础队列,该队列新增了消费者 不再是一个,所以我们通过代码模拟出两个consumer消费者。在原来的消费者类里写两个方法 其中消费者1效率高 消费者2效率低 RabbitListener(queues "simple.queue")public voi…

学习网络需要认识的各种设备

网桥(bridge) 网桥工作在数据链路层,可以把多个局域网连接起来,组成一个更大的局域网 以太网中,数据链路层地址就是mac地址,网桥与集线器的区别就是,网桥会过滤mac,只有目的mac地址…

draw.io 网页版二次开发(2):开始修改代码

目录 一 说明 二 打开开发环境 1. 代码调整 2. 修改访问链接 3. 注意 三 部分功能的代码汇总 1. 保存功能 2. 菜单栏折叠按钮功能 3. 顶部菜单栏 4.在顶部菜单栏中的【文件】菜单中新增选项 (1) 方法一:单独增加 (…

calllback回调函数:同步调用,异步调用,异步回调

纯python代码的异步回调 # _*_ encoding:utf-8 _*_ import time import threading callback_value None onFlag Truedef add(a, b, num):print(f"I am the function: %s, please wait for %d" % (add.__name__, num))time.sleep(num)c a bprint("a b 1 &…

K8S搭建

文章目录 K8S搭建配置要求 安装 Kuboard-Spray加载离线资源包规划并安装集群访问集群重启Kubernetes集群Worker节点不能启动许多Pod一直Crash或不能正常访问 containerd配置网络代理 常用的 kubectl 命令: K8S搭建 安装高可用的Kubernetes集群 配置要求 对于 Kub…

Springboot+mybatis-plus+dynamic-datasource+继承DynamicRoutingDataSource切换数据源

Springbootmybatis-plusdynamic-datasource继承DynamicRoutingDataSource切换数据源 背景 最近公司要求支持saas,实现动态切换库的操作,默认会加载主租户的数据源,其他租户数据源在使用过程中自动创建加入。 解决问题 1.通过请求中设置租…

软件产品检测认证是什么?

软件产品检测认证是软件企业、系统集成商或软件商为了提高自身产品的竞争力,增强客户信心,通过第三方机构对企业的软件产品质量和可靠性进行全面测试与评估的过程。这一过程主要关注软件产品的功能、性能、安全性、可维护性等方面,确保软件产…

FileLink跨网文件传输医疗行业解决方案

随着医疗行业的快速发展,医疗机构之间的信息共享和文件传输需求日益增加。然而,由于网络环境的复杂性和数据安全性的要求,传统的文件传输方式已经无法满足医疗行业的需求。为此,我们推出了FileLink跨网文件传输医疗行业解决方案&a…