mysql数据库主从同步I/O问题,下面介绍比较靠谱的修复方法。

主节点IP:10.99.202.25,从节点IP:10.99.202.26,修复步骤如下:

1,查看主库repl账号访问权限

mysql -h10.99.202.25 -P3306 -uroot -p"密码";
#进入主数据库后执行:
select user,host from mysql.user; #注意查看repl用户的host列要允许从节点访问。

1.1,调整主库repl账号访问权限

如果上一步查询repl访问权限不正确,需要调整:

update mysql.user set host='%' where user='repl';
flush privileges;

2,查看主库repl账号操作权限

进入主数据库后执行:

show grants for 'repl'@'%'; #注意%可以按实际的来

2.1,调整主库repl账号操作权限

如果上一步查询repl操作权限不正确,需要调整:

GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%' identified by 'repl的密码';
show grants for 'repl'@'%'; #注意%可以按实际的来

3,主库锁表,注意窗口不要关闭

进入主数据库后执行:

flush table with read lock; #锁表

4,备份主库数据

cd /data/kube/  #进入数据目录执行

mysqldump -h10.99.202.25 -P3306 -uroot -p"密码" --all-databases --single-transaction --default-character-set=utf8 > /data/kube/mysql_bak20210118_2205.sql

5,查看主库binlog日志信息

进入主数据库后执行:

show master status\G

记住mysql-bin.000xxx找出File名称和Position位置

6,把主库备份文件移动到从库所在节点

将备份数据拷贝到从节点:

#通过scp命令将主节点备份数据拷贝到从节点
scp -rp /data/kube/mysql_bak20210118_2205.sql root@10.99.202.26:/data/kube/

7,在从库上停止slave

新开窗口登录从库

mysql -h10.99.202.26 -P3306 -uroot -p"密码"
#进入从数据库后执行:
stop slave;

8,在从库上导入主库的备份数据

在从数据库执行导入数据:

#进入从数据库后执行
source /data/kube/mysql_bak20210118_2205.sql

9,查看主库与从库的server_id

在主库,从库分别查看:

show variables like 'server_id';

#要求值不能相同。

10,查看主库与从库的server-uuid

在主库,从库分别查看 sudo vi /data/kube/mysql/auto.cnf 里面有生成的server-uuid值
#要求值不能相同。

10.1,解决server-uuid重复问题

在从节点执行:
sudo mv /data/kube/mysql/auto.cnf /data/kube/mysql/auto.cnf.bak
然后重启mysql服务:
sudo docker restart mysql-slave
#重启从节点mysql服务后,新生成的server-uuid值与原来不同

12,解锁主数据库

#进入主数据库后执行解锁:
unlock tables;

13,重置从库同步

#进入从库执行:
reset slave;

14,从库上重新设置同步节点

CHANGE MASTER TO
MASTER_HOST='10.99.202.25',
MASTER_PORT=3306,
MASTER_USER='repl',
MASTER_PASSWORD='repl',
MASTER_LOG_FILE='mysql-bin.000005',
MASTER_LOG_POS=1158;
#host,port,user,password请根据你的主库设置相应修改,log_file和log_pos根据主库中master status相应修改。

host,port,user,password请根据你的主库设置相应修改,log_file和log_pos根据主库中master status相应修改。

15,从库上开启slave

start slave;

16,从库上查看slave状态

show slave status\G;

#显示如下信息则表示正常

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

17,主库上确认从库Slave_UUID

进入主数据库后执行:

show variables like 'server_uuid';
show slave hosts; #确认主从节点对应正确即完成

【完】


参考文档:

MySQL 手动主从同步不锁表
https://www.cnblogs.com/cheyunhua/p/14060051.html

mysql 数据同步 出现Slave_IO_Running:No问题的解决方法小结
https://blog.csdn.net/mergerly/article/details/50068589

slave have equal MySQL Server UUIDs原因及解决
https://www.cnblogs.com/cxxjohnson/p/7522515.html

MySQL Master command COM_REGISTER_SLAVE failed: Access denied for user
https://blog.csdn.net/snowhite91/article/details/102816441

mysql数据库主从同步I/O问题修复的更多相关文章

  1. mysql数据库主从同步

    环境: Mater:   CentOS7.1  5.5.52-MariaDB  192.168.108.133 Slave:   CentOS7.1  5.5.52-MariaDB  192.168. ...

  2. mysql数据库主从同步读写分离(一)主从同步

    1.mysql数据库主从同步读写分离 1.1.主要解决的生产问题 1.2.原理 a.为什么需要读写分离? 一台服务器满足不了访问需要.数据的访问基本都是2-8原则. b.怎么做?  不往从服务器去写了 ...

  3. MySQL数据库主从同步延迟分析及解决方案

    一.MySQL的数据库主从复制原理 MySQL主从复制实际上基于二进制日志,原理可以用一张图来表示: 分为四步走: 1. 主库对所有DDL和DML产生的日志写进binlog: 2. 主库生成一个 lo ...

  4. Linux下MySQL数据库主从同步配置

    说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...

  5. MySQL数据库主从同步实战过程

       Linux系统MySQL数据库主从同步实战过程 安装环境说明 系统环境: [root@~]# cat /etc/redhat-release CentOS release 6.5 (Final) ...

  6. 【转】MySQL数据库主从同步管理

    MYSQL主从同步架构是目前使用最多的数据库架构之一,尤其是负载比较大的网站,因此对于主从同步的管理也就显得非常重要,新手往往在出现主从同步错误的时候不知道如何入手,这篇文章就是根据自己的经验来详细叙 ...

  7. MySQL数据库主从同步安装与配置总结

    MySQL的主从同步是一个很成熟的架构,优点为: ①在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力: ②在从主服务器进行备份,避免备份期间影响主服务器服务: ③当主服务器出现问题时 ...

  8. 烂泥:学习mysql数据库主从同步复制原理

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 说明本篇文章部分转载自互联网. MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对 ...

  9. linux shell mysql 数据库主从同步状态检查告警

    需求: 1.监测数据库主从状态 2.获取数据库主要参数 3.可读取配置文件 4.部署位置自适应.   参考资料: http://blog.csdn.net/yf210yf/article/detail ...

  10. mysql 数据库主从同步

    1.简介 写这篇文章是网上找到的相关主从同步的都不够完全,本人第一次搭建主从同步,完全看着网上的文章来搭建的,结果你懂的,踩了很多坑.所以特地把踩到的坑写出来,新手切勿直接布置到正式环境,请于测试环境 ...

随机推荐

  1. 基于Java+SpringBoot心理测评心理测试系统功能实现八

    一.前言介绍: 1.1 项目摘要 心理测评和心理测试系统在当代社会中扮演着越来越重要的角色.随着心理健康问题日益受到重视,心理测评和心理测试系统作为评估个体心理状态.诊断心理问题.制定心理治疗方案的工 ...

  2. 2. jenkins的安装

    Docker方式: 如果在安装社区推荐插件时报错,网络延迟,则建议采用官方yum安装 遇到一个问题:公司局域网openstack虚拟机安装时,修改了镜像仍报错,但是自己电脑vmware虚拟机正常,暂时 ...

  3. 开源 - Ideal库 - 枚举扩展设计思路及实现难点(三)

    今天想和大家分享关于枚举扩展设计思路和在实现过程中遇到的难点. 01.设计思路 设计思路说起来其实也很简单,就是通过枚举相关信息:枚举值.枚举名.枚举描述.枚举项.枚举类型,进行各种转换,通过一个信息 ...

  4. 简单几步,基于云主机快速为Web项目添加AI助手

    在华为开发者空间,借助华为云对话机器人服务 CBS您可以零代码创建一个大模型 RAG (Retrieval-Augmented Generation,即检索增强生成)应用,来实现 AI 助手的智能问答 ...

  5. 不依赖 Spring,你会如何自实现 RabbitMQ 消息的消费(一)

    开心一刻 上午一好哥们微信我哥们:哥们在干嘛,晚上出来吃饭我:就我俩吗哥们:对啊我:那多没意思,我叫俩女的出来哥们:好啊,哈哈哈晚上吃完饭到家后,我给哥们发消息我:今天吃的真开心,下次继续哥们:开心尼 ...

  6. Java8提供的Stream方式进行分组GroupingBy

    有时我们需要对集合进行分组操作,这时可以使用Java8提供的Stream方式进行分组.挺好用的,此处记录下.直接贴code:   Road实体: @Data @NoArgsConstructor @A ...

  7. 西门子PLC与上位机通信方案梳理

    一.前言 大家好!我是付工. 西门子PLC是工控领域使用非常多的一种PLC品牌,对于上位机开发人员来说,对于西门子PLC的通信,我们一般可以采取哪些通信方式呢? 今天跟大家分享一下上位机实现与西门子P ...

  8. 构造SLR语法分析表

    构造SLR语法分析表 方法: 1)构造G'的规范LR(0)项集族 2)根据规则生成动作 3)生成转换 4)设置报错 /** * P157 规范LR(0)项集族 * @param grammar */ ...

  9. 清理docker logs

    1,docker ps找到id [root@mysql3 /]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1d8 ...

  10. 08C++选择结构(2)——教学

    一.逻辑变量 教学视频 存储类似灯亮或灯灭.是男还是女等结果只有两种可能的数据时,可以使用逻辑型变量. 逻辑型变量用关键字bool定义,所以又称为布尔变量,其值只有两个false(假)和true(真) ...