【MySQL Shell】8.9.5 将集群重新加入到 InnoDB ClusterSet
如果 InnoDB 集群是 InnoDB ClusterSet 部署的一部分,MySQL Shell 会在重新启动后立即自动将其恢复到拓扑中的角色,前提是其运行正常且未被标记为无效。但是,如果集群被标记为无效或其 ClusterSet 复制通道已停止,则必须使用 clusterSet.rejoinCluster() 操作将其重新加入 InnoDB ClusterSet 部署。
clusterSet.rejoinCluster() 操作验证目标集群是否满足以下要求:
- 该集群以前是 ClusterSet 的成员。
- 集群具有法定人数(足够的成员联机以形成多数)。
- 可以访问集群的主服务器。
- 集群未持有任何元数据锁或 InnoDB 事务锁。
- 与 ClusterSet 的活动成员相比,集群的 GTID 集( gtid_executed) 不包含额外的事务,视图更改事件除外。这些组复制内部事务由 group_replication_view_change_uuid 系统变量指定的 UUID 标识,集群重新加入过程可以协调它们。
如果集群满足这些要求,该操作将重新启动 ClusterSet 复制通道并删除 INVALIDATED 状态。如果没有,则需要修复已识别的任何问题,然后重试该命令。
按照以下步骤将 InnoDB 集群重新加入 InnoDB ClusterSet:
-
使用 MySQL Shell, 使用 InnoDB Cluster 管理员帐户(使用
cluster.setupAdminAccount()创建)连接到主集群或副本集群中的任何成员服务器。您也可以使用 InnoDB Cluster 服务器配置帐户,该帐户也具有所需的权限。建立连接后,使用dba.getClusterSet()或cluster.getClusterSet()命令获取 ClusterSet 对象。使用 InnoDB Cluster 管理员帐户或服务器配置帐户非常重要,以便存储在 ClusterSet 对象中的默认用户帐户具有正确的权限。例如:mysql-js> \connect admin2@127.0.0.1:3310 Creating a session to 'admin2@127.0.0.1:3310' Please provide the password for 'admin2@127.0.0.1:3310': ******** Save password for 'admin2@127.0.0.1:3310'? [Y]es/[N]o/Ne[v]er (default No): Fetching schema names for autocompletion... Press ^C to stop. Closing old connection... Your MySQL connection id is 28 Server version: 8.0.27-commercial MySQL Enterprise Server - Commercial No default schema selected; type \use <schema> to set one. <ClassicSession:admin2@127.0.0.1:3310> mysql-js> myclusterset = dba.getClusterSet() <ClusterSet:testclusterset> -
使用 MySQL Shell 中 AdminAPI 的
clusterSet.status()函数检查整个部署的状态。例如:mysql-js> myclusterset.status({extended: 1})有关输出的说明,请参阅 8.6 InnoDB ClusterSet 的状态和拓扑 。
-
发出
clusterSet.rejoinCluster()命令,命名要重新加入 InnoDB ClusterSet 的集群。例如:mysql-js> myclusterset.rejoinCluster('clustertwo') Rejoining cluster 'clustertwo' to the clusterset NOTE: Cluster 'clustertwo' is invalidated * Updating metadata* Rejoining cluster ** Changing replication source of 127.0.0.1:4420 to 127.0.0.1:3310 ** Changing replication source of 127.0.0.1:4430 to 127.0.0.1:3310 ** Changing replication source of 127.0.0.1:4410 to 127.0.0.1:3310Cluster 'clustertwo' was rejoined to the clusterset对于
clusterSet.rejoinCluster()命令:clusterName参数是必需的,它指定了 InnoDB ClusterSet 中用于集群的标识符,如clusterSet.status()命令输出中所示。在本例中,clustertwo 是要重新加入的集群的名称。- 如果要执行验证并记录更改而不实际执行,请使用
dryRun选项。
当您执行
clusterSet.rejoinCluster()命令时,MySQLShell 会检查目标集群是否满足重新加入 ClusterSet 的要求,如果不满足,则返回错误。如果目标集群满足要求,MySQL Shell 将执行以下任务:- 检查 ClusterSet 复制通道是否正在从当前主集群复制,如果尚未复制,则重新配置该通道。
- 重新启动 ClusterSet 复制通道。
- 清除集群的
INVALIDATED状态。
目标集群作为副本集群重新加入 InnoDB ClusterSet, 即使它以前是主集群。如果要将目标集群转换为主集群,则需要进行受控切换。
请注意,如果在执行
clusterSet.rejoinCluster()命令时目标集群的成员不在线或不可访问,则该命令无法正确配置这些成员。如果不再需要这些实例,可以使用cluster.removeInstance()命令删除它们。如果修复这些实例或使其再次联机,请在这些成员返回到集群后再次执行clusterSet.rejoinCluster()命令。 -
使用
extended选项再次执行clusterSet.status()命令,以验证 InnoDB clusterSet 部署的状态。 -
如果您确实希望将重新加入的集群变成主集群,请执行
clusterSet.setPrimaryCluster()命令,指定其为重新加入的集群。8.7 InnoDB ClusterSet 的受控切换 提供了该过程的说明,包括如何引导 MySQL Router 实例将流量发送到新的主集群。
相关文章:
【MySQL Shell】8.9.5 将集群重新加入到 InnoDB ClusterSet
如果 InnoDB 集群是 InnoDB ClusterSet 部署的一部分,MySQL Shell 会在重新启动后立即自动将其恢复到拓扑中的角色,前提是其运行正常且未被标记为无效。但是,如果集群被标记为无效或其 ClusterSet 复制通道已停止,则必须使用 clus…...
元素水平垂直居中的方法有哪些?如果元素不定宽高呢?
实现元素水平垂直居中的方式: 利用定位margin:auto利用定位margin:负值利用定位transformtable布局flex布局grid布局 1-利用定位margin:auto <style>.father{width:500px;height:300px;border:1px solid #0a3b98;position: relative;}.son{width:100px;heig…...
访问学者在新加坡访学生活日常花销大吗?
新加坡地理位置优越,社会发达,教学质量好,吸引不少国内学生前往新加坡留学、访学。那么,去新加坡访学,访问学者花销需要多少钱呢?下面和51访学网小编一起来了解一下吧。 一、饮食 新加坡的饮食从很亲民的…...
XCP实战系列介绍11-几个常用的XCP命令解析
本文框架 1.概述2. 常用命令解析2.1 CONNECT连接(0xFF)2.2 SHORT_UPLOAD 命令(0xF4)2.2 SET_MTA (0xF6)2.3 MOVE命令(0x19)2.4 GET_CAL_PAGE(0xEA)2.5 SET_CAL_PAGE(0xEB)2.6 DOWNLOAD(0xF0)1.概述 在文章《看了就会的XCP协议介绍》中详细介绍了XCP的协议,在《XCP实战系列介绍…...
全志V853芯片 如何在Tina V85x平台切换sensor?
目的 V85x某方案目前默认Sensor是GC2053。实际使用时若需要用到GC4663(比如wdr功能)和SC530AI(支持500W),可按如下步骤完成切换。 步骤 下面以GC4663为例,SC530AI按相应方式适配。 Step1 检查Sensor驱动…...
2023全网最火的接口自动化测试,一看就会
目录 接口自动化测试用例设计Excel接口测试用例访问MySQL接口测试用例访问PyTest测试框架接口自动化测试必备技能-HTTP协议request库实现接口请求 引言 与UI相比,接口一旦研发完成,通常变更或重构的频率和幅度相对较小。因此做接口自动化的性价比更高&…...
华为OD机试真题JAVA实现【最小传递延迟】真题+解题思路+代码(20222023)
🔥系列专栏 华为OD机试(JAVA)真题目录汇总华为OD机试(Python)真题目录汇总华为OD机试(C++)真题目录汇总华为OD机试(JavaScript)真题目录汇总文章目录 🔥系列专栏题目输入输出示例一输入输出说明解题思路核心知识点Code运行结果版权说...
Transformer
Transformer由4部分组成,分别是:输入模块、编码模块、解码模块、输出模块整体架构图:一、输入模块结构 (1)源文本嵌入层及其位置编码器(2)目标文本嵌入层及其位置编码器二、编码器模块结构由N个…...
并发包工具之 批量处理任务 CompletionService(异步)、CompletableFuture(回调)
文章目录一、处理异步任务并获取返回值——CompletionService二、线程池三、Callable 与 Future四、通过回调方式处理可组合编排任务——CompletableFuture一、处理异步任务并获取返回值——CompletionService 特点描述: 对于比较复杂的计算,把…...
验收测试分类
α测试 Alpha 是内测版本,即现在所说的CB。 此版本表示该软件仅仅是一个初步完成品, 通常只在软件开发者内部交流, 也有很少一部分发布给专业测试人员。 一般而言, 该版本软件的bug 较多, 普通用户最好不要安装。 β测试 Beta是公测版本,是对所有用户…...
因新硬件支持内核问题Ubuntu 22.04.2推迟发布
导读Ubuntu 22.04.2 LTS 原定于 2 月 9 日发布。但 Canonical 宣布该版本因各种问题不得不推迟两周,定于 2 月 23 日发布。 Ubuntu 22.04.2 LTS 原定于 2 月 9 日发布。但 Canonical 宣布该版本因各种问题不得不推迟两周,定于 2 月 23 日发布。 Canonica…...
agent扩展-自定义外部加载路径
自定义classLoader实现加载外部jar, 以skywalking agent 类加载器为例子 整体思路 扩展findClass ,解决loadClass可以查找到扩展findResource,解决getResources可以获取到资源 基本原理 ClassLoader loadClass的加载顺序 findLoadedClass 加载本地已经…...
Elasticsearch使用篇 - 指标聚合
指标聚合 指标聚合从聚合文档中提取出指标进行计算。可以从文档的字段或者使用脚本方式进行提取。 聚合统计可以同时返回明细数据,可以分页查询,可以返回总数量。 可以结合查询条件,限制数据范围,结合倒排索引列式存储。 指标…...
Python生命周期及内存管理
文章目录 一、Python的生命周期 1、概念2、如何监听生命周期二、内存管理 1.存储2.垃圾回收3.引用计数一、生命周期: 1、概念:一个对象从创建到消亡的过程 当一个对象呗创建是,会在内存中分配响应的内存空间进行存储 当这个对象不再使…...
Elasticsearch7.8.0版本进阶——数据写流程
目录一、数据写流程概述二、数据写流程步骤2.1、数据写流程图2.2、数据写流程步骤(新建索引和删除文档所需要的步骤顺序)2.3、数据写流程的请求参数一、数据写流程概述 新建、删除索引和新建、删除文档的请求都是写操作, 必须在主分片上面完…...
化学试剂Glutaric Acid-PEG-Glutaric Acid,GA-PEG-GA,戊二酸-聚乙二醇-戊二酸
一:产品描述 1、名称 英文:Glutaric Acid-PEG-Glutaric Acid,GA-PEG-GA 中文:戊二酸-聚乙二醇-戊二酸 2、CAS编号:N/A 3、所属分类:Carboxylic acid PEG 4、分子量:可定制, 戊…...
知识图谱业务落地技术推荐之国内知识图谱平台汇总(竞品)[阿里、腾讯、华为等】
各位可以参考国内知识图谱平台产品进行对技术链路搭建和产品参考提供借鉴。...
ABC 289 G - Shopping in AtCoder store 数学推导+凸包
大意: n个顾客,每个人有一个购买的欲望bi,m件物品,每一件物品有一个价值ci,每一个顾客会买商品当且仅当bici>定价. 现在要求对每一个商品定价,求出它的最大销售值(数量*定价) n,m<2e5 思路&#x…...
ARM Linux 如何在sysfs用户态命令行中控制 GPIO 引脚?
ARM Linux 如何在sysfs用户态命令行中控制 GPIO 引脚?我们在开发工作中,经常需要确定内核gpio驱动,是否有异常,或者在没有应用的情况下,像控制某个外设,这时我们就可以在控制台命令行中,用命令导…...
【Linux】生产者消费者模型 - 详解
目录 一.生产者消费者模型概念 1.为何要使用生产者消费者模型 2.生产者消费者之间的关系 3.生产者消费者模型的优点 二.基于阻塞队列的生产消费模型 1.在阻塞队列中的三种关系 2.BlockingQueue.hpp - 阻塞队列类 3.LockGurad.hpp - RAII互斥锁类 4.Task.hpp - 在阻塞队…...
故障诊断指南:用STFT在5分钟内定位工业设备异常时间点(MATLAB版)
故障诊断实战:STFT在工业设备异常定位中的高效应用(MATLAB实现) 工业设备的异常检测如同医生听诊,需要精准捕捉故障的"心跳节律"。传统方法往往只能告诉我们"设备病了",却难以定位"何时发病…...
快速上手ANIMATEDIFF PRO:从环境部署到视频导出的完整操作流程
快速上手ANIMATEDIFF PRO:从环境部署到视频导出的完整操作流程 1. 环境准备与快速部署 1.1 硬件要求检查 在开始之前,请确保您的设备满足以下最低配置要求: 显卡:NVIDIA RTX 3060及以上(推荐RTX 4090)显…...
PlugY完整指南:暗黑破坏神2终极单机优化解决方案
PlugY完整指南:暗黑破坏神2终极单机优化解决方案 【免费下载链接】PlugY PlugY, The Survival Kit - Plug-in for Diablo II Lord of Destruction 项目地址: https://gitcode.com/gh_mirrors/pl/PlugY PlugY是《暗黑破坏神2:毁灭之王》最强大的单…...
KV260实战:从PYNQ安装到跑通第一个AI例程,手把手带你玩转边缘AI开发板
KV260边缘AI开发实战:从PYNQ部署到图像分类全流程指南 当你第一次拿到KV260开发板时,可能会被它小巧的外表所迷惑——这块巴掌大的开发板实际上搭载了赛灵思的Kria K26 SOM系统模块,内含可编程逻辑和四核ARM Cortex-A53处理器,专为…...
虚拟手柄技术深度剖析:ViGEmBus内核级输入模拟架构解析
虚拟手柄技术深度剖析:ViGEmBus内核级输入模拟架构解析 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 在游戏开发与输入设备兼容性领域…...
SEO_网站排名不上去?试试这几个SEO解决办法
SEO:网站排名不上去?试试这几个SEO解决办法 如果你发现自己的网站在百度上的排名一直不上去,你可能正面临着一场SEO战争。SEO,全称搜索引擎优化,是提高网站在搜索引擎结果中排名的关键技术。本文将为你详细探讨一些常见…...
s2-pro多场景落地:法律文书语音宣读+重点条款强调音效添加
s2-pro多场景落地:法律文书语音宣读重点条款强调音效添加 1. 场景需求分析 在法律服务领域,文书宣读是一项高频且重要的需求。传统方式存在几个痛点: 人工宣读成本高:需要专业播音员录制,耗时耗力修改不便ÿ…...
OpenClaw插件开发入门:为Qwen3-32B镜像编写天气查询技能
OpenClaw插件开发入门:为Qwen3-32B镜像编写天气查询技能 1. 为什么需要自定义技能? 去年冬天,我经常需要同时查看多个城市的天气来规划差旅行程。每次手动打开天气网站、输入城市名、对比数据的过程让我不胜其烦。直到我发现OpenClaw可以通…...
Java OOM 异常:从原理、场景、排查到解决方案全攻略
原理 → 场景 → 排查 → 解决方案(面试 线上实战必备)这是后端开发、测试、运维必须烂熟于心的终极 OOM 指南,结构清晰、可直接用于复习、面试、故障处理。一、OOM 基础:到底什么是 OOM?1. 定义OOM OutOfMemoryErro…...
OpenClaw监控告警:GLM-4.7-Flash任务异常自动通知设置
OpenClaw监控告警:GLM-4.7-Flash任务异常自动通知设置 1. 为什么需要监控告警系统 上周我部署了一个基于GLM-4.7-Flash的自动化日报生成任务,结果连续三天都没收到输出。检查后发现是模型服务意外重启导致任务中断——这种"静默失败"在自动化…...
