使用pt-table-checksum 3.6.0避坑指南

3.6.0在使用dsn的情况下存在bug,最后回退3.4.0版本

创建ptuser用户
#使用验证算法,否则默认会报错
#创建用户
 create user 'ptuser'@'%' identified with  sha256_password  by "你的密码";
#发现用dsn还是会报对应错误
#授权

GRANT CREATE,INSERT,SELECT,DELETE,UPDATE,LOCK TABLES,PROCESS,SUPER,REPLICATION SLAVE ON *.* TO 'ptuser'@'%';

#执行如下命令  校验nacos主从是否一致
pt-table-checksum --explain --nocheck-replication-filters --no-check-binlog-format  --replicate=test.checksums --recursion-method=hosts --databases=nacos --host=localhost --user=ptuser --port=13306 --ask-pass
加了explain不写入checksums表。
去除explain选项
pt-table-checksum --nocheck-replication-filters --no-check-binlog-format  --replicate=test.checksums --recursion-method=hosts --databases=nacos --host=localhost --user=ptuser --port=13306 --ask-pass
提示无法发现slave,查询得知:
recursion-method 如果使用hosts 需要更改从库参数,并重新启动。
因此使用dsn方式。
主库创建percona相关库及表
create database percona_schema;
CREATE TABLE percona_schema.dsns ( id int(11) NOT NULL AUTO_INCREMENT, parent_id int(11) DEFAULT NULL, dsn varchar(255) NOT NULL, PRIMARY KEY (id));
#插入从库记录
INSERT INTO percona_schema.dsns(dsn) VALUES ('h=10.255.216.78,P=13306,u=ptuser,p=你的密码'); #将从库的DSN信息写入DSN表
退出数据库,使用如下命令  
pt-table-checksum --nocheck-replication-filters --no-check-binlog-format  --replicate=test.checksums --recursion-method dsn=t=percona_schema.dsns --databases=nacos --host=localhost --user=ptuser --port=13306 --ask-pass
报错
7-05T16:13:00 Error checksumming table nacos.permissions: DBI connect(';;mysql_read_default_group=client','',...) failed: Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory at /bin/pt-table-checksum line 1639.
更改用户认证方式为native试一下:
ALTER USER  'ptuser'@'%'  IDENTIFIED WITH 'mysql_native_password' BY '你的密码';
flush privileges;
还是报错。查看插件都已经改过来了
查看perl-DBD版本
[root@CQ2-LM9601028 ~]# rpm -qa|grep perl-DBD perl-DBD-MySQL-4.023-6.el7.x86_64
查看链接:https://perconadev.atlassian.net/browse/PT-1724
似乎要升级一下插件
http://repo.percona.com/tools/yum/experimental/7/RPMS/x86_64/perl-DBD-MySQL-4.050-4.el7.x86_64.rpm

 主从库升级后,还是报错
Error checksumming table nacos.config_info: DBI connect(';;mysql_read_default_group=client','',...) failed: Access denied for user 'root'@'localhost' (using password: NO) at /bin/pt-table-checksum line 1639.
根本不管连接的用户,发现海外用户有类似报告https://perconadev.atlassian.net/browse/PT-2250
 
退回 3.4.0版本。

回退一个rpm包

rpm -Uvh --oldpackage percona-toolkit-3.4.0-3.el7.x86_64.rpm


 执行如上命令
pt-table-checksum --nocheck-replication-filters --no-check-binlog-format  --replicate=test.checksums --recursion-method dsn=t=percona_schema.dsns --databases=nacos --host=localhost --user=ptuser --port=13306 --ask-pass

成功,发现记录不一样。使用同步工具

pt-table-sync修复

由于是生产库,数据量很小,直接重搭。
通过重新导入,再次校验,成功。

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

web自动化(四)日期控件

执行js脚本有两种方式一种是原始js 一种jQuery 推荐使用jQuery 根据简洁 方便 selenuim import timefrom selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.su…

从 麦克斯韦方程组 到 波动方程 再到 二维波动方程

从 麦克斯韦方程组 到 波动方程 再到 二维波动方程 flyfish 从麦克斯韦方程组,推导出了电场和磁场的波动方程。这两个波动方程描述了电磁场的传播,并且它们的形式与标准的波动方程一致。波动方程表明电场和磁场都以波的形式传播,传播速度 …

【C++】日期类

鼠鼠实现了一个日期类,用来练习印证前几篇博客介绍的内容!! 目录 1.日期类的定义 2.得到某年某月的天数 3.检查日期是否合法 4.(全缺省)构造函数 5.拷贝构造函数 6.析构函数 7.赋值运算符重载 8.>运算符重…

高效PD,稳定传输,LDR6023CQ芯片,打造顶级直播体验

在当今市场,一款备受瞩目的直播神器——无线领夹麦克风(MIC),正风靡于网红直播、在线教育、专业采访、高清视频录制及视频会议等多个领域。麦克风,这一昔日课堂上的常见设备,已随着科技的飞速发展而焕然一新…

数字信号处理及MATLAB仿真(2)——离散系统

上回书说到如何来编写一些简单的离散时间序列,今天咱们就来谈谈一些关于常系数差分方程的操作吧。 说到这里咱们对于常系数差分方程可能最关心的就是怎么去求解了。 其中最关键的部分就是filter函数,可以用来计算系统在输入信号为x的输出信号y。大家学过…

ASUS/华硕枪神5 G533Q G733Q系列 原厂win10系统 工厂文件 带F12 ASUS Recovery恢复

华硕工厂文件恢复系统 ,安装结束后带隐藏分区,一键恢复,以及机器所有驱动软件。 系统版本:Windows10 原厂系统下载网址:http://www.bioxt.cn 需准备一个20G以上u盘进行恢复 请注意:仅支持以上型号专用…

JAVA--JSON转换工具类

JSON转换工具类 import com.alibaba.fastjson.JSONObject; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackso…

NoSQL 非关系型数据库 Redis 的使用:

redis是基于内存型的NoSQL 非关系型数据库,本内容只针对有基础的小伙伴, 因为楼主不会做更多的解释,而是记录更多的技术接口使用,毕竟楼主不是做教学的,没有教学经验。 关于redis的介绍请自行搜索查阅。 使用redis数据…

h5 video 标签播放经过 java 使用 ws.schild( jave、ffmpeg ) 压缩后的 mp4 视频只有声音无画面的问题排查记录

1. 引入 ws.schild MAVEN 依赖&#xff1a; <dependency><groupId>ws.schild</groupId><artifactId>jave-all-deps</artifactId><version>3.5.0</version></dependency><dependency><groupId>ws.schild</grou…

QSettings 详解

QSettings 详解 QSettings是Qt框架中提供的一个类&#xff0c;用于方便地读写应用程序的配置信息。下面是对QSettings的详细解释&#xff1a; 一、基本概念 定义&#xff1a;QSettings提供了一个平台无关的API来读取和写入应用程序的配置数据。它可以处理多种格式&#xff0c…

idm下载慢怎么回事 idm批量导入下载使用方法

IDM (Internet Download Manager)是一款兼容性大&#xff0c;支持多种语言的下载管理软件&#xff0c;它可以自动检测并下载网页上的内容&#xff0c;这正是这一优点&#xff0c;使得它受到了广大用户的喜爱。在日常使用互联网的过程中&#xff0c;快速下载文件对我们来说非常重…

Victor CMS v1.0 SQL 注入漏洞(CVE-2022-26201)

前言 CVE-2022-26201 是 Victor CMS v1.0 中发现的一个 SQL 注入漏洞。该漏洞允许攻击者通过特制的 SQL 查询注入到应用程序中&#xff0c;从而访问或操作数据库中的数据。以下是详细信息&#xff1a; 漏洞描述&#xff1a; 类型&#xff1a;SQL 注入 (SQL Injection)影响版本…

掌握 SQL Server 中的 FLOOR 函数:数据舍入的艺术

掌握 SQL Server 中的 FLOOR 函数&#xff1a;数据舍入的艺术 引言 在数据分析和处理中&#xff0c;我们经常需要对数值进行精确控制&#xff0c;比如将数值舍入到特定的精度。SQL Server 提供了多种数学函数&#xff0c;其中 FLOOR 函数就是用来执行向上舍入操作的强大工具。…

专业课笔记——(第十二章:文件的读写)

目录 一、文件概述 1.存储角度 2.文件类型 3.文件操作流程 二、文件的基本操作 1.文件的使用模式 2.文件字符形式的输入输出 3.文件字符串形式的输入输出 4.文件格式化形式的输入输出 5.文件数据块形式的输入输出 6.文件的随机读写 一、文件概述 1.存储角度 文件存…

LLM - 神经网络的训练过程

1. 对于回归问题&#xff0c;用损失函数来计算预测值和真实值的差异&#xff0c;一种常用的公式是如下图所示(Mean Square Error)&#xff0c;如果损失函数的值越小说明神经网络学习越准确&#xff0c;所以神经网络训练目标是减小损失函数的值&#xff0c; 2. 对于分类问题&…

并发、多线程和HTTP连接之间有什么关系?

一、并发的概念 并发是系统同时处理多个任务或事件的能力。在计算中&#xff0c;这意味着系统能够在同一时间段内处理多个任务&#xff0c;而不是严格按照顺序一个接一个地执行它们。并发提高了系统的效率和资源利用率&#xff0c;从而更好地满足用户的需求。在现代应用程序中&…

SwiftUI中List的liststyle样式及使用详解添加、移动、删除、自定义滑动

SwiftUI中的List可是个好东西&#xff0c;它用于显示可滚动列表的视图容器&#xff0c;类似于UITableView。在List中可以显示静态或动态的数据&#xff0c;并支持垂直滚动。List是一个数据驱动的视图&#xff0c;当数据发生变化时&#xff0c;列表会自动更新。针对List&#xf…

神领物流项目第一天

文章目录 聚焦快递领域首先第一个是验证码模块流程登录接口权限管家 聚焦快递领域 首先第一个是验证码模块流程 首先生成验证码的流程 可以使用工具类去生成验证码 LineCaptcha lineCaptcha CaptchaUtil.createLineCaptcha(160, 60, 4, 26);// 获取值然后存入redis中 strin…

【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(二十二)

课程地址&#xff1a; 黑马程序员HarmonyOS4NEXT星河版入门到企业级实战教程&#xff0c;一套精通鸿蒙应用开发 &#xff08;本篇笔记对应课程第 32 节&#xff09; P32《31.通知-基础通知》 基础文本类型通知&#xff1a;briefText 没有用&#xff0c;写了也白写。 长文本类型…

【东奥会计-注册安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…