【MySQL Shell】8.9.2 InnoDB ClusterSet 集群中的不一致事务集(GTID集)
AdminAPI 的 clusterSet.status()
命令警告您,如果 InnoDB 集群的 GTID 集与 InnoDB ClusterSet 中主集群上的 GTID 集不一致。与 InnoDB ClusterSet 中的其他集群相比,处于此状态的集群具有额外的事务,并且具有全局状态 OK_NOT_CONSISTENT
。 集群在 InnoDB ClusterSet 中继续运行,状态为该状态,如果其 GTID 集是可用副本集群中最新的,则可以对其执行紧急故障切换。但是,它不符合受控切换的条件,因为事务的差异可能会导致客户端访问不正确的数据。如果集群离线,它也不能用额外的事务重新加入 InnoDB ClusterSet 。
InnoDB ClusterSet 中的副本集群是只读的,因此如果它一直是副本集群,那么它不应该包含额外的事务,除非在不使用 AdminAPI 命令的情况下对集群进行了更改。如果需要在组复制停止时对实例执行管理事务,请在执行管理语句之前始终将 sql_log_bin
系统变量的值设置为 OFF
, 然后再设置为 on:
SET SQL_LOG_BIN=0;
<administrator action>
SET SQL_LOG_BIN=1;
将此系统变量设置为 OFF
意味着从该点开始直到将其设置回 ON
为止发生的事务不会写入二进制日志,也不会为其分配 GTID 。
当主集群变得不可访问并且使用了紧急故障切换过程时,可能会在没有外部更改的情况下创建一组分散的事务。如果主集群在故障切换后保持在线,它可以继续通过仍然连接到它的任何 MySQL 路由器实例接受来自客户端的事务,并将这些事务传递给仍然连接到其的任何副本集群,显著的复制延迟可能会导致选择作为替换主集群的副本集群丢失来自主集群的一些事务。在这种情况下,当旧的主集群最初作为无效的副本集群重新联机时,从未传输到副本的事务将被标识为额外事务。
clusterSet.status()
命令的扩展输出标识具有额外事务的任何集群,并为它们分配 OK_NOT_CONSISTENT
全局状态。例如:
mysql-js> myclusterset.status({extended: 1})
{ "clusters": { "clusterone": { "clusterErrors": [ "ERROR: Errant transactions detected" ], "clusterRole": "REPLICA", "clusterSetReplication": { "applierStatus": "APPLIED_ALL", "applierThreadState": "Waiting for an event from Coordinator", "applierWorkerThreads": 4, "receiver": "127.0.0.1:3310", "receiverStatus": "ON", "receiverThreadState": "Waiting for source to send event", "source": "127.0.0.1:4410" }, "clusterSetReplicationStatus": "OK", "globalStatus": "OK_NOT_CONSISTENT", "status": "OK", "statusText": "Cluster is ONLINE and can tolerate up to ONE failure.", "topology": { "127.0.0.1:3310": { "address": "127.0.0.1:3310", "memberRole": "PRIMARY", "mode": "R/O", "replicationLagFromImmediateSource": "","replicationLagFromOriginalSource": "","status": "ONLINE","version": "8.0.27"},"127.0.0.1:3320": {"address": "127.0.0.1:3320","memberRole": "SECONDARY","mode": "R/O","replicationLagFromImmediateSource": "","replicationLagFromOriginalSource": "","status": "ONLINE","version": "8.0.27"},"127.0.0.1:3330": {"address": "127.0.0.1:3330","memberRole": "SECONDARY","mode": "R/O","replicationLagFromImmediateSource": "","replicationLagFromOriginalSource": "","status": "ONLINE","version": "8.0.27"}},"transactionSet": "54ff337b-2ccf-11ec-95da-3c6aa7197deb:1-131,54ff3ed7-2ccf-11ec-95da-3c6aa7197deb:1-5,c06527d6-2ce3-11ec-a55e-3c6aa7197deb:1,c0653492-2ce3-11ec-a55e-3c6aa7197deb:1-5","transactionSetConsistencyStatus": "INCONSISTENT","transactionSetConsistencyStatusText": "There are 1 transactions that were executed in this instance that did not originate from the PRIMARY.","transactionSetErrantGtidSet": "c06527d6-2ce3-11ec-a55e-3c6aa7197deb:1","transactionSetMissingGtidSet": ""},"clustertwo": {"clusterRole": "PRIMARY","globalStatus": "OK","primary": "127.0.0.1:4410","status": "OK","statusText": "Cluster is ONLINE and can tolerate up to ONE failure.","topology": {"127.0.0.1:4410": {"address": "127.0.0.1:4410","memberRole": "PRIMARY","mode": "R/W","status": "ONLINE","version": "8.0.27"},"127.0.0.1:4420": {"address": "127.0.0.1:4420","memberRole": "SECONDARY","mode": "R/O","replicationLagFromImmediateSource": "","replicationLagFromOriginalSource": "","status": "ONLINE","version": "8.0.27"},"127.0.0.1:4430": {"address": "127.0.0.1:4430","memberRole": "SECONDARY","mode": "R/O","replicationLagFromImmediateSource": "","replicationLagFromOriginalSource": "","status": "ONLINE","version": "8.0.27"}},"transactionSet": "54ff337b-2ccf-11ec-95da-3c6aa7197deb:1-131,54ff3ed7-2ccf-11ec-95da-3c6aa7197deb:1-5"}},"domainName": "testclusterset","globalPrimaryInstance": "127.0.0.1:4410","metadataServer": "127.0.0.1:4410","primaryCluster": "clustertwo","status": "AVAILABLE","statusText": "Primary Cluster available, there are issues with a Replica cluster."
}
将单个服务器的数据与 InnoDB 集群的其他数据进行协调的最安全方法是在 InnoDB ClusterSet 部署中确定具有最佳数据的服务器(最多的事务、最近的事务或最重要的事务),并使用 MySQL 的克隆功能将内容从该服务器传输到受影响的服务器。有关执行此操作的说明,请参阅 克隆远程数据 。然后使用 cluster.rejoinInstance()
命令让实例重新加入 InnoDB 集群。有关此操作的详细信息,请参见 第 7.8.1 节 “将实例重新加入到集群” 。
如果整个 InnoDB 集群受到影响,请按照 8.9.4 从 InnoDB ClusterSet 中移除集群 中的步骤,从 InnoDB 集集群部署中删除受影响的集群,并在其位置设置一个新的 InnoDB 集群。作为设置过程的一部分,新 InnoDB 集群中的服务器实例将接收正确的事务集。
如果您想保留额外的事务,可以按照 8.8 InnoDB ClusterSet 的紧急故障切换 中的步骤,执行紧急故障切换,以使具有这些事务的 InnoDB Cluster 成为主集群。
如果您能够处理问题事务,请使用 clusterSet.rejoinCluster()
操作将 InnoDB 集群重新连接到 InnoDB clusterSet 部署。有关此操作的说明,请参阅 8.9.5 将集群重新加入到 InnoDB ClusterSet 。
相关文章:
【MySQL Shell】8.9.2 InnoDB ClusterSet 集群中的不一致事务集(GTID集)
AdminAPI 的 clusterSet.status() 命令警告您,如果 InnoDB 集群的 GTID 集与 InnoDB ClusterSet 中主集群上的 GTID 集不一致。与 InnoDB ClusterSet 中的其他集群相比,处于此状态的集群具有额外的事务,并且具有全局状态 OK_NOT_CONSISTENT 。…...
logstash毫秒时间戳转日期以及使用业务日志时间戳替换原始@timestamp
文章目录问题解决方式参考问题 在使用Kibana观察日志排查问题时发现存在很多组的timestamp 数据一样,如下所示 详细观察内部数据发现其中日志数据有一个timestamp字段保存的是业务日志的毫秒级时间戳,经过和timestamp数据对比发现二者的时间不匹配。经…...
【C语言】qsort——回调函数
目录 1.回调函数 2.qsort函数 //整形数组排序 //结构体排序 3.模拟实现qsort //整型数组排序 //结构体排序 1.回调函数 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来…...
8年软件测试工程师经验感悟
不知不觉在软件测试行业,野蛮生长了8年之久。这一路上拥有了非常多的感受。有迷茫,有踩过坑,有付出有收获, 有坚持! 我一直都在软件测试行业奋战, 毕业时一起入职的好友已经公司内部转岗,去选择…...
腾讯云安全组配置参考版
官方文档参考: 云服务器 安全组应用案例-操作指南-文档中心-腾讯云 新建安全组时,您可以选择腾讯云为您提供的两种安全组模板: 放通全部端口模板:将会放通所有出入站流量。放通常用端口模板:将会放通 TCP 22端口(Lin…...
代码覆盖率工具OpenCppCoverage在Windows上的使用
OpenCppCoverage是用在Windows C上的开源的代码覆盖率工具,源码地址为https://github.com/OpenCppCoverage/OpenCppCoverage ,最新发布版本为0.9.9.0,License为GPL-3.0。 从https://github.com/OpenCppCoverage/OpenCppCoverage/releases 下载…...
代码随想录算法训练营第24天25天|● 77. 组合● 216.组合总和III ● 17.电话号码的字母组合
77组合 看完题后的思路 void f(数组,startIndex)递归终止 if(startIndex数组长度||path.sizek){ if(path.sizek){ 加入} }递归 for(;startIndex<num.size;startIndex࿰…...
Python_pytorch
python_pytorch 小土堆pytotch学习视频链接 from的是一个个的包(package) import 的是一个个的py文件(file.py) 所使用的一般是文件中的类(.class) 第一步实例化所使用的类,然后调用类中的方法(def) Dataset 数据集处理 import os from PIL impo…...
【Java|golang】2335. 装满杯子需要的最短总时长
现有一台饮水机,可以制备冷水、温水和热水。每秒钟,可以装满 2 杯 不同 类型的水或者 1 杯任意类型的水。 给你一个下标从 0 开始、长度为 3 的整数数组 amount ,其中 amount[0]、amount[1] 和 amount[2] 分别表示需要装满冷水、温水和热水的…...
shell编程之sed
文章目录八、shell编程之sed8.1 工作原理8.2 sed基本语法8.3 模式空间中的编辑操作8.3.1 地址定界8.3.2 常用编辑命令8.4 sed扩展八、shell编程之sed 8.1 工作原理 sed是一种流编辑器,它是文本处理中非常有用的工具,能够完美的配合正则表达式使用&…...
安全寒假作业nginx反向代理+负载均衡上传webshell重难点+apache漏洞
1.应用场景 负载均衡作为现今解决web应用承载大流量访问问题的一种方案,在真实环境中得到广泛的部署。实现负载均衡的方式有很多种,比如 DNS 方式、HTTP 重定向方式、IP 负载均衡方式、反向代理方式等等。 比如基于dns的负载均衡: 当然还有…...
day35|01背包问题、416. 分割等和子集
01背包问题 有n件物品和一个最多能背重量为w的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。 例:背包最大重量为4。 物品为: 重量价值物品0115物品…...
Linux内核启动(3,0.11版本)内核启动完成与进入内核main函数
这一部分是在讲解head.s代码,这个代码与bootsect.s和setup.s在同一目录下,但是head.s程序在被编译生成目标文件后会与内核其他程序一起被链接成system模块,位于system模块的最前面开始部分。system模块将被放置在磁盘上setup模块之后开始的扇…...
【2023】Prometheus-Alertmanager高可用集群
本次实验准备了三个节点,分别为laert-01~03 目录1.安装Alertmanager2.配置启动文件3.验证集群4.关于集群的配置项1.安装Alertmanager 这部分内容在三个节点上都要执行 下载安装包,将安装包解压至/data目录下 wget https://github.com/prometheus/aler…...
2023-2-11 刷题情况
最短路计数 题目描述 给出一个 NNN 个顶点 MMM 条边的无向无权图,顶点编号为 1∼N1\sim N1∼N。问从顶点 111 开始,到其他每个点的最短路有几条。 输入格式 第一行包含 222 个正整数 N,MN,MN,M,为图的顶点数与边数。 接下来 MMM 行&…...
2019_41 考研408
2019年(单链表)41.(13分)设线性表采用带头结点的单链表保存,链表中的结点定义如下:typedef struct node {int data;struct node* next;}NODE;请设计一个空间复杂度为O(1)且时间上尽可能高效的算法,重新排列L中的各结点,得到线性表L(q,a,,a,an…...
Linux账号与用户组
目录 用户标识符:UID与GID 用户账号 /etc/passwd文件结构 1、账号名称 2、密码 3、UID 4、GID 5、用户信息说明栏 6、家目录 7、shell /etc/shadow文件结构 1、账号名称 2、密码 3、最近修改密码的日期 4、密码不可被修改的天数(与第三字…...
有趣的Hack-A-Sat黑掉卫星挑战赛——定位卫星Jackson
国家太空安全是国家安全在空间领域的表现。随着太空技术在政治、经济、军事、文化等各个领域的应用不断增加,太空已经成为国家赖以生存与发展的命脉之一,凝聚着巨大的国家利益,太空安全的重要性日益凸显[1]。而在信息化时代,太空安…...
JAVA集合专题3 —— vector + LinkedList + Set
目录vector的特点LinkedList底层结构模拟双向链表比较ArrayList和LinkedListSet接口基本介绍Set接口的遍历方式Set接口实现类对象的特点Set接口实现类HashSet模拟HashSet/HashMap的底层结构vector的特点 Vector底层是一个对象数组Vector是线程同步的,即线程安全的&…...
Scout:一款功能强大的轻量级URL模糊测试与爬取工具
关于Scout Scout是一款功能强大的轻量级URL模糊测试与爬取工具,可以帮助广大研究人员进行URL模糊测试,并爬取目标Web服务器中难以扫描发现的VHSOT、文件和目录等资源。 项目中包含了一个完整的字典文件,并尽可能地提供了更多的便携性&#…...
leaflet 解决marker呈现灰色边框的问题
第052个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet示例中处理marker外面有灰色边框的问题,请看未处理会后的图片。 处理后的结果非常满意,不再显示灰色边框。处理方法参考源代码。 直接复制下面的 vue+openlayers源代码,操作2分钟即可运行实现效果; 注意…...
MySQL JSON类型字段的查找与更新
MySQL 提供了丰富的函数用于 JSON 类型字段的查找与更新,详见官方文档。 创建一个表 t1,basic_info 字段为JSON类型: CREATE TABLE t1 (id int(11) NOT NULL AUTO_INCREMENT,basic_info json DEFAULT NULL,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CH…...
element Ui树状图控件 spring boot Vue 实现角色授权功能
目录 前言: 二. element ui 2.1官网提供的核心代码 三.表结构 编辑 四.后端 4.1功能分析 4.2实体类 4.3 查询全部权限显示的结果 4.2修改角色权限的后台方法 五.vue 5.0代码总览 5.1树形图 5.2所需要的绑定数据 5.3所需方法 前言: 先上图…...
已解决sc delete MongoDB卸载MongoDB拒绝访问。
已解决sc delete MongoDB卸载MongoDB拒绝访问。 文章目录报错问题报错翻译报错原因解决方法联系博主免费帮忙解决报错报错问题 粉丝群里面的一个小伙伴遇到问题跑来私信我,想卸载MongoDB数据库,但是发生了报错(当时他心里瞬间凉了一大截&…...
python的opencv操作记录11——阈值分割
文章目录传统图像处理分割阈值分割一个应用场景opencv库中的阈值分割固定阈值THRESH_OTSU 大津法阈值自适应阈值传统图像处理分割 现在提到图像分割,很多人会直接想到当前火爆的深度学习的各种分割网络,比如实例分割,语义分割等。其实在传统…...
Python-项目实战--飞机大战-英雄登场(7)
目标设计英雄和子弹类使用pygame.key.get_pressed()移动英雄发射子弹1.设计英雄和子弹类1.1英雄需求游戏启动后,英雄出现在屏幕的水平中间位置,距离屏幕底部120像素英雄每隔0.5秒发射一次子弹,每次连发三枚子弹英雄默认不会移动,需…...
寒假安全作业nginx-host绕过实例复现
1.测试环境搭建 LNMP架构的话,肯定就是linux、nginx、mysql、php四大组件。在后面的复现中我们还会用到https的一部分知识,故这里的nginx就需要使用虚拟主机并且配置https证书,且具有php解析功能。 1.1 基础nginx配置 #1.创建web目录 mkdir …...
RocketMQ-消息消费模式 顺序消费
RocketMQ-消息消费模式 顺序消费RocketMQ-消息消费模式集群模式集群模式的演示(本身就默认)Rocketmq存储队列广播模式顺序消费如何改实现顺序消费RocketMQ-消息消费模式 集群模式 在消费模式为集群的情况下,如果机器是集群的,消息只会给集群中的其中一台机器消费到 集群模…...
一、Java并发编程之线程、synchronized
黑马课程 文章目录1. Java线程1.1 创建和运行线程方法一:Thread方法二:Runnable(推荐)lambda精简Thread和runnable原理方法三:FutureTask配合Thread1.2 查看进程和线程的方法1.3 线程运行原理栈与栈帧线程上下文切换1.…...
12.hadoop系列之MapReduce分区实践
本文我们学习MapReduce默认分区以及自定义分区实践 当我们要求将统计结果按照条件输出到不同文件(分区),比如按照统计结果将手机归属地不同省份输出到不同文件中(分区) 1.默认Partitioner分区 public class HashPartitioner<K, V> extends Partitioner<…...
wordpress nosql/重庆网站seo诊断
观察者模式 观察者模式(Observer): 又被称为发布-订阅者模式或消息机制,定义了一种依赖关系,解决了主体对象与观察者之间功能的耦合。 创建一个观察者对象 首先我们创建一个闭包对象,让其在页面加载就立即执行 var Observer(funct…...
java做网站例子/百度登陆
被围绕的区域 题目描述:给你一个 m x n 的矩阵 board ,由若干字符 ‘X’ 和 ‘O’ ,找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。 示例说明请见LeetCode官网。 来源:力扣(Leet…...
wordpress 不能更换主题/企业网站设计欣赏
本文为瑞典查尔姆斯理工大学(作者:Erik Henriksson)的硕士论文,共76页。 本文研究了利用汽车雷达传感器对动态目标进行扩展跟踪。跟踪是基于一个360度环境感知系统的数据,该系统由四个视场重叠的雷达传感器组成。本文…...
宁波网站建设专业定制/宁波网络推广方法
我们有一服务器,上面运行着两个mysql实例,这几天iowait一直很高,在20-30%,下午特地专门排查和解决了下,相关过程整理如下。该服务器有两个挂载盘,服务器在阿里云上,一个系统盘,一个数…...
扫二维码直接进网站怎么做/有没有可以代理推广的平台
Android提供了调试工具被称为Dalvik Debug Monitor Server (DDMS),工作原理如下: DDMS将搭建起IDE与测试终端(Emulator 或者connected device)的链接,它们应用各自独立的端口监听调试器的信息,DDMS可以实时监测到测试终端的连接情…...
信息公司网站建设方案 游戏/北京网络营销推广培训哪家好
log_file/usr/local/nagios/var/nagios.log # 定义nagios日志文件的路径cfg_file/usr/local/nagios/etc/objects/commands.cfg # “cfg_file”变量用来引用对象配置文件,如果有更多的对象配置文件,在这里依次添加即可。cfg_file…...