mysql 配置主从复制 及 Slave_SQL_Running = no问题排查

一、配置主数据库

1、在mysql 配置文件my.cnf中设置主数据库配置

sql 复制代码
server-id=1 //唯一的标示符
log-bin=mysql-bin //开启二进制日志

2、重启数据库

3、安全规范的写法是新建一个用户给这个用户复制的权限(直接用root也可以不建议)

sql 复制代码
CREATE USER 'repl'@'%' IDENTIFIED BY 'password'; //repl用户名 //%代表可以链接的地址%表示任何IP都可以访问 可以把%替换为具体的ip password表示用户名
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';  # 授权复制权限

二、在从库中设置(my.cnf)

1、

sql 复制代码
server-id=2 //唯一的标示符
replicate-do-db = sys //需要同步的库

2、重启数据库

3、设置主库的连接信息

sql 复制代码
CHANGE MASTER TO
  MASTER_HOST='', //主库ip
  MASTER_USER='', //账号  
  MASTER_PASSWORD='', //密码
  MASTER_PORT=3306; //端口

4、重启数据库

三、检查主从状态

在从库上执行SHOW SLAVE STATUS 命令,查看复制状态。

Slave_IO_Running和Slave_SQL_Running都为Yes,表示复制进程正常运行。

==============================>问题排查

重新连接主从后

stop slave 关闭主从

START SLAVE; 开启主从

SHOW SLAVE STATUS; 显示状态

如果Slave_SQL_Running为no

一、去主库执行

sql 复制代码
show master status ; //记住Position
FLUSH PRIVILEGES; //刷新权限
再次执行记住Position
show master status ; //记住Position

二、去从库执行

sql 复制代码
stop slave;  //关闭主从
CHANGE MASTER to  
MASTER_HOST = '',
MASTER_USER = '',
MASTER_PASSWORD = '',
MASTER_PORT = 3306,
MASTER_LOG_POS = 3095; //上面主库的Position
START SLAVE;  //开启主从
相关推荐
zuoerjinshu2 小时前
sql实战解析-sum()over(partition by xx order by xx)
数据库·sql
NocoBase3 小时前
【2.0 教程】第 1 章:认识 NocoBase ,5 分钟跑起来
数据库·人工智能·开源·github·无代码
Hoshino.415 小时前
基于Linux中的数据库操作——下载与安装(1)
linux·运维·数据库
Oueii6 小时前
Django全栈开发入门:构建一个博客系统
jvm·数据库·python
未来龙皇小蓝6 小时前
【MySQL-索引调优】11:Group by相关概念
数据库·mysql·性能优化
2401_831824967 小时前
使用Fabric自动化你的部署流程
jvm·数据库·python
njidf7 小时前
Python日志记录(Logging)最佳实践
jvm·数据库·python
twc8297 小时前
大模型生成 QA Pairs 提升 RAG 应用测试效率的实践
服务器·数据库·人工智能·windows·rag·大模型测试
@我漫长的孤独流浪7 小时前
Python编程核心知识点速览
开发语言·数据库·python
2401_851272997 小时前
实战:用Python分析某电商销售数据
jvm·数据库·python