如何在mysql中设置单主多从架构

首先配置主库启用binlog并创建复制用户,然后为每个从库设置唯一server-id并配置连接主库的复制参数,最后验证各从库的Slave_IO_Running和Slave_SQL_Running状态为Yes,确认数据同步正常。

如何在mysql中设置单主多从架构

在 MySQL 中实现单主多从架构,主要是通过配置主从复制(Replication)来完成。这种架构下,一个主库(Master)负责处理写操作,多个从库(Slave)同步主库的数据并可承担读请求,从而提升系统读性能和高可用性。

1. 确认环境与网络连通性

确保主从服务器之间网络互通,MySQL 版本尽量一致或兼容。通常建议使用 GTID 或基于二进制日志(binlog)的异步复制。

主库和所有从库能相互通过 IP 和端口通信(默认 3306)关闭防火墙或开放 3306 端口各节点时间同步(使用 NTP)

2. 配置主库(Master)

编辑主库的 my.cnf(或 my.ini)配置文件,启用 binlog 并设置唯一 server-id。

[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-format = ROW
expire-logs-days = 7
max-binlog-size = 100M

重启 MySQL 服务后,登录主库创建用于复制的账号:

CREATE USER 'repl'@'%' IDENTIFIED BY 'repl_password';GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';FLUSH PRIVILEGES;

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

SHOW MASTER STATUS;

3. 配置各个从库(Slave)

每个从库也需要唯一的 server-id,并可选择是否开启 relay log。

[mysqld]
server-id = 2 # 每个从库 id 不同,如 3、4…
relay-log = mysql-relay-bin
read-only = 1

重启从库 MySQL 服务,然后连接到主库进行复制配置:

CHANGE MASTER TO  MASTER_HOST='主库IP',  MASTER_USER='repl',  MASTER_PASSWORD='repl_password',  MASTER_LOG_FILE='mysql-bin.000001',  -- 来自 SHOW MASTER STATUS  MASTER_LOG_POS=154;                  -- 来自 SHOW MASTER STATUS

START SLAVE;

重复此步骤为每个从库配置,注意修改 server-id 和 IP 地址。

4. 验证复制状态

在每个从库上执行:

SHOW SLAVE STATUSG

检查以下两个关键字段:

Slave_IO_Running: YesSlave_SQL_Running: Yes

若均为 Yes,说明复制正常。如果有错误,查看 Last_Error 信息进行排查。

可通过在主库创建数据库或表,验证是否同步到各从库。

基本上就这些。单主多从架构搭建完成后,可结合中间件(如 MyCat、ProxySQL)实现读写分离,进一步发挥从库作用。

以上就是如何在mysql中设置单主多从架构的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/201747.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
怎样在VSCode中管理多个工作区?
上一篇 2026年9月12日 11:48:24
win11动态壁纸怎么设置 win11动态壁纸启用教程
下一篇 2026年9月12日 11:52:23

相关推荐

  • time函数处理时间在mysql中如何操作

    MySQL中的时间函数用于处理时间数据,如获取当前时间用NOW()或CURTIME(),提取时间部分用TIME(),格式化输出用TIME_FORMAT(),时间计算可用TIMEADD()、TIMEDIFF()等函数,支持加减和差值运算,需注意字段类型与格式匹配。 在 MySQL 中,time 函数和…

    2026年9月20日
    100
  • Linux如何用firewalld开放服务端口

    Linux如何用firewalld开放服务端口Linux如何用firewalld开放服务端口Linux如何用firewalld开放服务端口Linux如何用firewalld开放服务端口

    firewalld通过预定义服务或直接添加端口实现端口开放,需确保服务运行并执行reload生效;使用firewall-cmd可管理服务与端口,配合systemctl控制服务状态,最后通过list命令验证配置。 在Linux系统中,firewalld是动态管理防火墙的服务,支持网络区域、接口绑定和服…

    2026年9月20日 用户投稿
    200
  • safari浏览器提示“此网页的连接已加密”是什么意思_safari浏览器网页连接加密提示说明

    “此网页的连接已加密”表示网站使用HTTPS协议并通过SSL/TLS加密通信,确保数据传输安全;2. 在Safari中点击地址栏锁形图标可查看证书详情,确认颁发机构、有效期及域名一致性以验证真实性;3. 若网站未启用HTTPS或证书无效,Safari会显示“此网站非私密”等警告,应避免输入个人信息,…

    2026年9月20日
    100
  • 如何安装mysql GUI管理工具

    首选安装MySQL Workbench,Windows下载MSI安装,macOS拖拽DMG到应用,Linux用apt命令安装,也可选phpMyAdmin、DBeaver等工具。 安装 MySQL 图形化管理工具(GUI)可以让你更方便地操作数据库,比如建表、查询、备份等。最常用且官方推荐的工具是 M…

    2026年9月20日
    100
  • Java从文本文件随机读取多行连续内容的教程

    本教程旨在指导java开发者如何高效地从文本文件中随机读取并打印指定数量(例如5行)的连续内容,尤其适用于处理结构化文本块(如诗歌)。我们将探讨如何避免仅读取文件开头固定行数的局限,通过将文件内容一次性加载到内存并结合随机数生成器来精确选取所需的文本块,从而实现真正的随机性与灵活性。 引言与问题分析…

    2026年9月20日
    200
  • Linux如何配置NAT实现端口映射

    Linux如何配置NAT实现端口映射Linux如何配置NAT实现端口映射Linux如何配置NAT实现端口映射Linux如何配置NAT实现端口映射

    首先启用IP转发,再通过iptables配置DNAT实现端口映射,将外部请求重定向到内网主机,如将公网2222端口映射至192.168.1.100的22端口;若需回包正确返回,还需配置MASQUERADE或SNAT规则;最后保存规则确保重启生效,并确认防火墙允许相应端口通信。 在Linux中配置NA…

    2026年9月20日 用户投稿
    000
  • 腾讯元宝AI便捷体验入口 腾讯元宝网页版在线入口

    腾讯元宝AI便捷体验入口为https://yuanbao.tencent.com,支持网页版、手机APP及微信小程序访问,提供智能问答、文档解析、内容生成等多功能服务。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 腾讯元宝AI便捷体验入口…

    2026年9月20日
    000
  • 升级后如何处理存储过程

    数据库升级后需检查存储过程的语法兼容性、对象依赖和权限设置。例如,MySQL 8.0 不再支持模糊 GROUP BY,SQL Server 强化参数校验,应使用官方文档和工具检测语法变更。通过 INFORMATION_SCHEMA 或 sys.sql_expression_dependencies …

    2026年9月20日
    000
  • between区间查询在mysql中如何使用

    BETWEEN操作符用于查询闭区间内的数据,包含边界值,支持数字、日期和字符串类型,常用于WHERE子句中。 在 MySQL 中,BETWEEN 操作符用于选取介于两个值之间的数据范围,常用于 WHERE 子句中进行区间查询。它支持数字、日期和字符串类型的比较,语法简洁且高效。 基本语法 BETWE…

    2026年9月20日
    000
  • Safari浏览器网页提示不安全怎么办 Safari浏览器网页安全提示处理方法

    Safari提示“不安全的网站”时,表明存在潜在风险,需先判断原因再决定是否继续访问。1. 警告通常因网站使用HTTP、SSL证书异常、设备时间错误或网站被标记为恶意所致。2. 可通过核对网址、校准设备时间、更新系统、清除缓存等方式排查误报。3. 若确认网站安全(如内网或测试环境),可点击“前往吸收…

    2026年9月20日
    000
  • win11蓝牙设备无法连接或频繁断开怎么办_Win11蓝牙连接异常解决方法

    首先运行蓝牙疑难解答,检查并重启蓝牙支持服务,更新或回退蓝牙驱动程序,禁用USB选择性暂停设置,最后删除设备并重新配对以解决连接不稳定问题。 如果您尝试将蓝牙设备(如耳机、鼠标或键盘)与电脑配对,但始终无法建立稳定连接或频繁断开,则可能是由于驱动程序、服务设置或系统电源管理策略导致。以下是解决此问题…

    2026年9月20日
    100
  • MySQL备份数据加密技术_MySQL保障备份数据安全的策略

    MySQL备份数据加密技术_MySQL保障备份数据安全的策略MySQL备份数据加密技术_MySQL保障备份数据安全的策略MySQL备份数据加密技术_MySQL保障备份数据安全的策略MySQL备份数据加密技术_MySQL保障备份数据安全的策略

    加密是保障mysql备份数据安全的核心,但还需结合多层次防护体系。1.静态数据加密可通过文件系统层(如luks、bitlocker)或数据库内部(tde)实现;2.备份文件应独立加密(如gpg、openssl);3.传输中需使用scp、https等加密通道;4.密钥管理至关重要,需单独妥善处理。备份…

    2026年9月20日 用户投稿
    000
  • win11文件资源管理器没有选项卡功能怎么办_win11资源管理器选项卡缺失修复方法

    Windows 11文件资源管理器缺少选项卡功能时,首先确认系统版本是否为22H2或更高,且来自Beta或Release Preview通道;若版本支持但功能仍缺失,可尝试重启Windows资源管理器进程以修复界面加载问题;检查注册表中HKEY_CURRENT_USERSoftwareMicroso…

    2026年9月20日
    000
  • mysql事务和锁如何协同工作

    事务隔离级别决定锁行为,InnoDB通过MVCC与行锁协同保障ACID;不同隔离级别下读写操作加锁策略不同,SELECT默认快照读不加锁,UPDATE/DELETE加排他锁,INSERT可能触发间隙锁;死锁由系统自动检测并回滚代价小的事务;MVCC利用版本链实现非阻塞一致性读,提升并发性能。 MyS…

    2026年9月20日
    000
  • mysql如何优化like模糊查询

    优先使用前缀匹配并建立索引,避免前置通配符导致全表扫描;对大字段采用全文索引或外部搜索引擎如Elasticsearch;合理设计覆盖索引,减少SELECT *,提升查询效率。 在MySQL中,LIKE模糊查询虽然常用,但容易导致性能问题,特别是在数据量大的情况下。优化的关键在于减少全表扫描、提升索引…

    2026年9月20日
    000
  • mysql如何优化初级项目数据库性能

    答案:初级项目数据库性能问题多源于设计和使用不当,优化需从表结构、索引、SQL语句和配置入手。应选用合适数据类型、避免NULL、拆分大字段;为常用查询字段建索引,遵循最左前缀原则,避免函数操作导致索引失效;禁止SELECT *,合理使用LIMIT,减少子查询与循环中执行SQL;开启慢查询日志,使用连…

    2026年9月20日
    000
  • 添加未广播WiFi网络方法

    添加未广播WiFi网络方法添加未广播WiFi网络方法添加未广播WiFi网络方法添加未广播WiFi网络方法

    当无线wifi网络关闭了ssid广播功能时,笔记本电脑将无法自动检测到该网络,需通过手动方式添加网络信息才能成功连接。 1、 打开控制面板,进入“网络和共享中心”,点击“管理无线网络”选项。 2、 在无线网络管理界面中,点击“添加”按钮,开始配置新网络。 3、 系统将弹出“手动创建网络配置文件”的窗…

    2026年9月20日 用户投稿
    100
  • join连接表在mysql中如何实现

    INNER JOIN返回两表匹配行,LEFT JOIN保留左表全部数据,RIGHT JOIN保留右表全部数据,多表连接可连续使用JOIN,需注意ON条件和索引优化。 在 MySQL 中,JOIN 用于将两个或多个表根据相关列进行连接,从而在一个查询中获取跨表的数据。常见的 JOIN 类型包括 INN…

    2026年9月20日
    000
  • 怎样在VSCode中比较两个文件的差异?

    VSCode内置文件比较功能可通过命令面板或资源管理器右键菜单启动,操作简便无需插件;2. 使用“Compare Active File With…”或“Select for Compare”后选择文件即可并排查看差异;3. 差异显示中绿色为新增、红色为删除内容,支持逐项浏览与导航,适用…

    2026年9月20日
    000
  • order by排序在mysql中如何实现

    ORDER BY用于对查询结果排序,支持ASC升序和DESC降序,位于SELECT语句末尾,可按单列或多列排序;MySQL优先利用索引有序性避免排序,若无合适索引则采用filesort在内存或磁盘排序;优化器选择单路或双路排序以提升效率;性能关键包括为排序字段建立索引、避免大结果集无索引排序、减少S…

    2026年9月20日
    000

发表回复

登录后才能评论
关注微信