MySQL基于gtid同步,新增slave节点

news/2024/10/22 16:41:30

环境说明:当前MySQL集群为一主一从, 新增加 Slave 节点,将架构变更为一主两从,集群已经运行了很长时间,主节点得binlog早就被purged,启动slave得时候会报错,1236、1062等

操作步骤:备份master数据,从节点reset master,导入数据

1.备份主节点数据:在进行任何操作之前,首先需要对主节点的数据进行备份,以确保数据的安全性。这可以通过使用mysqldump工具或其他备份方法来完成。

2.从节点重置:在新增的Slave节点上执行reset master命令,这将清除该节点上现有的复制信息,包括已经purged的binlog日志。这一步是必要的,因为旧的复制信息可能导致复制过程中的错误。

3.导入数据:将备份的数据导入到新增的Slave节点中。这一步骤确保Slave节点拥有主节点的完整数据副本。

master确认用户信息:

master> select user,host,plugin from mysql.user;

master> show grants for 'root'@'localhost';

备份master数据

mysqldump -uroot -p --all-databases --single-transaction --triggers --routines --events >full.sql

 

新增slave节点操作:

slave> stop slave;slave> reset master;slave> reset slave;slave> source full.sql;配置change masterslave> change master to master_host='主节点IP',master_port=3306,master_user='repl',master_password='密码',master_auto_position=1;启动slaveslave> start slave;slave> show slave status\G;

 

主从数据同步测试:

1.主节点随便创建一个数据库,查看从节点是否同步

master> create database test111;

从节点查看:

slave> show databases;

2.账号密码登录验证:

在从库节点上使用master的账号密码登录

使用原先slave节点root账号密码登录成功

slave> alter user root@'%' identified by '密码';slave> flush privileges;退出重新使用新密码登录OK

 

过程遇到得问题处理:

1.主库执行alter user后从库报错1396

master> alter user sys@'%' identified by '密码';

从节点查看主从同步情况:

slave> show slave status\G;

1396报错处理:

slave> select * from performance_schema.replication_applier_status_by_worker where LAST_ERROR_NUMBER=1396\G;
*************************** 1. row ***************************CHANNEL_NAME:WORKER_ID: 1THREAD_ID: NULLSERVICE_STATE: OFF
LAST_SEEN_TRANSACTION: f94464fc-3e89-11ef-bb05-fa163e40e770:10092821LAST_ERROR_NUMBER: 1396LAST_ERROR_MESSAGE: Worker 1 failed executing transaction 'f94464fc-3e89-11ef-bb05-fa163e40e770:10092821' at master log mysql-bin.000031, end_log_pos 358006489; Error 'Operation ALTER USER failed for 'sys'@'%'' on query. Default database: ''. Query: 'ALTER USER 'sys'@'%' IDENTIFIED WITH 'mysql_native_password' AS '*83B9BAAFABA1C2C8E47E266271D05FFB8F30CEF8''LAST_ERROR_TIMESTAMP: 2024-10-21 17:11:49
1 row in set (0.00 sec)ERROR:
No query specified

 

 

slave> stop slaveslave> set @@session.gtid_next='f94464fc-3e89-11ef-bb05-fa163e40e770:10092821';slave> begin;Query OK, 0 rows affected (0.00 sec)slave> commit;Query OK, 0 rows affected (0.00 sec)slave> set @@session.gtid_next=automatic;Query OK, 0 rows affected (0.00 sec)slave> start slave;Query OK, 0 rows affected (0.22 sec)

 

重新查看slave同步状态恢复正常

slave> show slave status\G;

 

主库删除sys用户重新创建

master> drop user sys@'%';

master> create user 'sys'@'%' identified by '密码';

slave重新登录提示成功

2. grant授权得时候1045错误(之前得root@localhost用户被删除了,重新创建了一个root@localhost用户并授权)

检查MySQL服务器上各个用户的权限设置

select user,host,Grant_priv,Super_priv from mysql.user;

Grant_priv列用于指示用户是否具有授权权限

update mysql.user set Grant_priv='Y' where User='root';

查看root@localhost用户权限

show grants for root@localhost;

授权root@localhost用户权限

grant all on *.* to 'root'@'localhost';

查询root@localhost用户的权限和配置

select * from mysql.user where user='root' and host='localhost'\G;

当前登录用户为'root'@'%',修改'root'@'%'用户密码再授权

alter user 'root'@'%' identified by '密码';flush privileges;

退出重新登录'root'@'%'用户为root@localhost用户授权成功

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

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

相关文章

多校A层冲刺NOIP2024模拟赛11

又双叒叕垫底了。 rank 11,T1 90,T2 12,T3 5,T4 35。 accdoer上 rank 44,T1 100,T2 0,T3 5,T4 35。 难度难评,T1签,剩下的不可做?死磕T3了,猜一个结论假一个,打完暴力遗憾离场。 好像两个题库都挂了几分,不管了,赛前挂分RP就++。 慢报:5k_sync_closer成功地取得…

Java 中的垃圾收集器有哪些,它们的工作原理是什么?

在 Java 中,垃圾收集(GC)是自动内存管理的核心部分,它帮助开发者免于手动管理内存分配和回收,提升了开发效率和应用性能。Java中的主要垃圾收集器包括Serial GC、Parallel GC、CMS (Concurrent Mark Sweep) GC、G1 (Garbage-First) GC,以及最新的 ZGC (Z Garbage Collect…

应对复杂架构下的监控挑战?统一运维可观测能力是关键!

在全球数字化变革背景下,企业需适应数字经济与市场变化,进行系统性数字化转型。在“十四五”规划指导下,企业纷纷探求数字化应用之路,大数据、云计算、人工智能、区块链等技术成了热门话题,其中云运维备受瞩目。 企业在数字化转型中难免会碰到云上系统规划、运维体系建设、…

2024年全国大学生信息安全竞赛安徽省赛-WP

2024年全国大学生信息安全竞赛安徽省赛-WP没有re,不会......0X01 初赛(CTF) MISC 图像损坏 损坏的GIF文件,补上缺失的文件头 ​​ 用puzz拆分GIF,得到多个图片 ​​ 每张图对应六十四挂幻方配数图,得到 Q1RGe2FiY19kZWZfZ30 ​​ ​​ base64解码得到 CTF{abc_def_g} ​​…

保姆级 | MySQL的安装配置教程(非常详细)

一、下载Mysql 从官网下载MySQL,这里我选用的是Mysql8.0.34版本二、安装Mysql 下载完成后直接双击进行安装,打开后的页面如下所示:“Developer Default”是开发者默认 “Server only”仅作为服务器安装 “Clientonly”仅作为客户端安装 “Full”是完整安装 “Custom”是自定…

【架构与设计】常见微服务分层架构的区别和落地实践

作者:京东科技 康志兴前言 从强调内外隔离的六边形架构,逐渐发展衍生出的层层递进、注重领域模型的洋葱架构,再到和DDD完美契合的整洁架构。架构风格的不断演进,其实就是为了适应软件需求越来越复杂的特点。 可以看到,越现代的架构风格越倾向于清晰的职责定位,且让领域模…