mysql数据库主从同步I/O问题修复
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问题修复的更多相关文章
- mysql数据库主从同步
环境: Mater: CentOS7.1 5.5.52-MariaDB 192.168.108.133 Slave: CentOS7.1 5.5.52-MariaDB 192.168. ...
- mysql数据库主从同步读写分离(一)主从同步
1.mysql数据库主从同步读写分离 1.1.主要解决的生产问题 1.2.原理 a.为什么需要读写分离? 一台服务器满足不了访问需要.数据的访问基本都是2-8原则. b.怎么做? 不往从服务器去写了 ...
- MySQL数据库主从同步延迟分析及解决方案
一.MySQL的数据库主从复制原理 MySQL主从复制实际上基于二进制日志,原理可以用一张图来表示: 分为四步走: 1. 主库对所有DDL和DML产生的日志写进binlog: 2. 主库生成一个 lo ...
- Linux下MySQL数据库主从同步配置
说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...
- MySQL数据库主从同步实战过程
Linux系统MySQL数据库主从同步实战过程 安装环境说明 系统环境: [root@~]# cat /etc/redhat-release CentOS release 6.5 (Final) ...
- 【转】MySQL数据库主从同步管理
MYSQL主从同步架构是目前使用最多的数据库架构之一,尤其是负载比较大的网站,因此对于主从同步的管理也就显得非常重要,新手往往在出现主从同步错误的时候不知道如何入手,这篇文章就是根据自己的经验来详细叙 ...
- MySQL数据库主从同步安装与配置总结
MySQL的主从同步是一个很成熟的架构,优点为: ①在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力: ②在从主服务器进行备份,避免备份期间影响主服务器服务: ③当主服务器出现问题时 ...
- 烂泥:学习mysql数据库主从同步复制原理
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 说明本篇文章部分转载自互联网. MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对 ...
- linux shell mysql 数据库主从同步状态检查告警
需求: 1.监测数据库主从状态 2.获取数据库主要参数 3.可读取配置文件 4.部署位置自适应. 参考资料: http://blog.csdn.net/yf210yf/article/detail ...
- mysql 数据库主从同步
1.简介 写这篇文章是网上找到的相关主从同步的都不够完全,本人第一次搭建主从同步,完全看着网上的文章来搭建的,结果你懂的,踩了很多坑.所以特地把踩到的坑写出来,新手切勿直接布置到正式环境,请于测试环境 ...
随机推荐
- 为 .NET Conf 2024 做好准备之本地社区活动 .NET Conf China 2024 启动
.NET Conf 2024 是一个面向.NET生态系统社区的大型活动,将于2024年11月12日至14日举行.该活动将通过YouTube和Twitch进行现场直播,并在dotnetconf.net网 ...
- RAC:无训练持续扩展,基于检索的目标检测器 | ECCV'24
来源:晓飞的算法工程笔记 公众号,转载请注明出处 论文: Online Learning via Memory: Retrieval-Augmented Detector Adaptation 论文地 ...
- 基于Java+SpringBoot+Mysql实现的古诗词平台功能设计与实现四
一.前言介绍: 1.1 项目摘要 随着信息技术的迅猛发展和数字化时代的到来,传统文化与现代科技的融合已成为一种趋势.古诗词作为中华民族的文化瑰宝,具有深厚的历史底蕴和独特的艺术魅力.然而,在现代社会中 ...
- WIN10 SERVICES -- 部署IIS
一 . 添加角色功能 二. 添加WEB服务器(IIS) 三. 打开TCP ASP.NET 安装 供运行端口
- 使用WebRTC技术搭建小型的视频聊天页面
目录 目录 参考资料 什么是WebRTC? 能做什么? 架构图 个人理解(类比) 核心知识点 核心知识点类比 ICE框架 STUN(协议) NAT(网络地址转换) TURN SDP(会话描述协议) W ...
- linux history 想显示历史命令的时间和作者
vi ~/.profile 增加 HISTTIMEFORMAT="%F %T `whoami` `who am i|awk '{print $1,$5}'|sed 's/ (/@/'|sed ...
- (Python基础教程之十六)Python multidict示例–将单个键映射到字典中的多个值
1.什么是multidict词典> 在python中," multidict "一词用于指代字典,在字典中可以将单个键映射到多个值.例如 多重结构 multidictWith ...
- Java Class 文件中Method的存储
class文件是java编译后的文件类型.其代表一个类,其有专门的存储格式.其中会存放数据也会存放方法,而所谓的方法存放就是将方法中的调用都转换成java字节码指令.所方法调用从机器的角度看就是对于寄 ...
- 攻防世界:Web习题之 get_post
攻防世界:Web习题之 get_post 题目内容 https://adworld.xctf.org.cn/challenges/list 题目首先需要我们用GET方式提交一个名为a,值为1的变量: ...
- Visual Studio C++ 汇编 混合编程
Visual Studio C++ 汇编 混合编程 实验要求 请用汇编语言编写实现GCD递推公式的子程序,对入口和出口参数形式不做要求,但需要用 C 语言函数来获取输入.调用汇编递推子程序,并且用 C ...