新闻中心

mysql如何搭建多从复制

2025-09-16
浏览次数:
返回列表
一主多从配置通过主库处理写入、从库分担读取提升性能与冗余。1. 主库启用binlog并创建复制用户,记录MASTER STATUS的File和Position;2. 各从库设置唯一server-id,启动中继日志与只读模式,执行CHANGE MASTER指向主库并开启复制;3. 在主库创建表或插入数据,从库查询验证数据一致性;4. 确保网络互通、防火墙开放3306端口,避免server-id冲突,监控Seconds_Behind_Master延迟。正确配置后结构稳定,适用于读多写少场景。

mysql如何搭建多从复制

搭建MySQL多从复制(一主多从)能提升读性能和数据冗余能力。核心思路是:一个主库(Master)负责写操作,多个从库(Sl*e)同步主库数据用于读操作。以下是具体步骤。

1. 配置主库(Master)

主库需要开启二进制日志(binlog),并设置唯一的server-id。

编辑主库配置文件 my.cnf(通常位于 /etc/my.cnf 或 /etc/mysql/my.cnf):

[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-format = ROW
expire_logs_days = 7
binlog-do-db = your_database_name

修改后重启MySQL服务:

systemctl restart mysqld

登录MySQL创建用于复制的账号:

CREATE USER 'repl'@'%' IDENTIFIED BY 'your_password';
GRANT REPLICATION SL*E ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;

查看主库状态,记录File和Position:

SHOW MASTER STATUS;

2. 配置各个从库(Sl*e1、Sl*e2...)

每个从库也需要设置唯一的server-id(不能与主库或其他从库重复),并启用中继日志。

编辑每个从库的my.cnf:

[mysqld]
server-id = 2
relay-log = mysql-relay-bin
log-sl*e-updates = 1
read-only = 1

重启从库MySQL服务:

systemctl restart mysqld

在每个从库上执行CHANGE MASTER命令,连接到主库:

CHANGE MASTER TO
  MASTER_HOST='主库IP地址',
  MASTER_USER='repl',
  MASTER_PASSWORD='your_password',
  MASTER_LOG_FILE='mysql-bin.000001',
  MASTER_LOG_POS= 154;

启动复制:

Project IDX Project IDX

Google推出的一个实验性的AI辅助开发平台

Project IDX 166 查看详情 Project IDX

START SL*E;

检查复制状态:

SHOW SL*E STATUS\G

重点关注以下两项:

  • Sl*e_IO_Running: Yes
  • Sl*e_SQL_Running: Yes

如果有错误,查看Last_Error字段排查问题。

3. 验证复制效果

在主库执行建表或插入操作:

USE your_database_name;
CREATE TABLE test_rep (id INT, name VARCHAR(20));
INSERT INTO test_rep VALUES (1, 'from master');

分别登录各个从库,执行:

SELECT * FROM test_rep;

如果能看到相同数据,说明复制成功。

4. 常见注意事项

  • 确保主从之间网络互通,防火墙开放3306端口
  • server-id在整个复制集群中必须唯一
  • 从库设置read-only防止误写
  • 建议使用ROW格式binlog,更安全
  • 定期监控SHOW SL*E STATUS中的延迟(Seconds_Behind_Master)

基本上就这些。一主多从结构清晰,维护简单,适合读多写少的场景。只要主从配置正确,各从库独立运行,互不影响。不复杂但容易忽略细节,比如server-id重复或权限不足。配置完成后保持监控即可稳定运行。

以上就是mysql如何搭建多从复制的详细内容,更多请关注其它相关文章!


# 操作步骤  # 产品营销网站建设  # 辽阳专业网站建设优势  # 重庆专业网站推广价格  # 怎么投诉没有营销推广  # 网站费用算宣传推广费吗  # 大连网站建设动态  # seo流量排名方法  # 无内容不营销推广方案  # 抖音二手车的关键词排名  # 江西网站营销推广优化  # 相关文章  # 适用于  # 多写  # mysql  # 全攻略  # 重启  # 多个  # 镜像  # 离线  # sql创建  # 配置文件  # ssl  # 端口  # 防火墙  # word  # 主从复制 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: R星幕后开发视频泄露 包含《GTA6》等多款大作  初次安装JDK时环境变量如何正确配置_J*A_HOME与PATH设置规则讲解  QQ邮箱官方网站登录入口_QQ邮箱网页版在线使用  Django通过AJAX异步上传图片并保存至模型的完整指南  J*a TimerTask文件监控:HashMap状态管理与常见陷阱规避指南  邮政快递包裹最新位置 邮政快递实时追踪入口  J*a里如何使用forEach遍历Map_Map遍历方法说明  PyTorch模型训练效果不佳?深入剖析常见错误与调试技巧  win11专注助手在哪 Win11免打扰模式设置与自动化规则【指南】  Lar*el用户头像管理:实现图片缩放、存储与旧文件安全删除的最佳实践  《北京人工智能产业白皮书(2025)》发布:全年核心产值预计突破 4500 亿元  Yandex官网免登录入口_俄罗斯Yandex搜索引擎一键访问  PySpark中从现有列右侧提取可变长度字符创建新列的教程  基于动态规划的房屋花卉种植最小成本算法详解  QQ邮箱登录官网首页 腾讯QQ邮箱网页入口  J*aScript数组对象转换:按指定键分组与值收集  Win11怎么合并任务栏图标 Win11开启任务栏合并减少图标占空间【方法】  快手赚钱渠道_快手收益来源  TikTok国际版官网直达_TikTok国际版官网直达进入在线观看  单射、满射与双射的关系 一文理清所有逻辑  在J*a中如何捕获IndexOutOfBoundsException_索引越界异常防护方法说明  58动漫网在线官方网 58动漫网正版动漫入口网址  2025俄罗斯Yandex最新入口 官方网站地址及浏览器下载指南  为什么我的微信朋友圈看不到别人的更新_微信朋友圈更新显示异常解决方法  动漫岛观看全网网 动漫岛在线正版动漫入口  漫蛙manwa官网登录界面_漫蛙漫画网页版主站入口  中兴Axon42Ultra怎样在文件App筛图_iPhone中兴Axon42Ultra文件App筛图【图片筛选】  Go语言中Map值调用指针接收器方法的限制与应对  QQ邮箱网页版邮箱入口 QQ邮箱官方登录平台  Pyrogram与g4f集成:异步编程实践与常见错误解决  在Socket.IO连接中实现Access Token自动更新与动态重连  C++的std::forward_list怎么用_C++ STL中单向链表容器的特点与应用  如何在 Windows 11 中启动游戏手柄设置  Python实现多节点属性重叠度分析教程  C++如何生成随机数_C++ random库使用方法与范围设置  Python类型检查:优化关联可选属性的Mypy推断策略  Win11怎么修改默认浏览器_Windows 11设置Chrome为默认  QQ邮箱官方邮箱登录入口 QQ邮箱网页版快速访问  俄罗斯Yandex免登录入口_Yandex搜索引擎官网一键直达  一加 Nord 5 隐私权限异常_一加 Nord 5 系统安全优化  魅族20怎样在浏览器开无图省流_iPhone魅族20浏览器开无图省流【流量节省】  Django AJAX 文件上传教程:解决图片无法保存到模型的常见问题  CSS Flexbox如何实现多行排列_flex-wrap wrap自动换行显示  Lar*el DB::listen 事件中的查询执行时间单位解析  在命令行怎么运行html项目_命令行运行html项目方法【教程】  CSS条件样式无法按设备触发怎么排查_media条件语句正确设置解决触发问题  Golang如何使用const iota_Go iota常量计数器讲解  如何优雅地扩展SprykerGlue后端API授权逻辑,使用spryker/glue-backend-api-application-authorization-connector-extension  HTML转PPT成品工具有哪些?HTML网页转PPT成品工具大全  神庙逃亡小游戏在线玩 神庙逃亡小游戏入口 

搜索