MySQL 双机互备
文章目录前言一、环境准备二、核心配置步骤1.修改两台服务器的 MySQL 配置文件2.创建复制专用账号3.删除日志文件(从当前开始同步两边都删掉然后重启数据库)4.配置互为从库5.检查从库状态关键,两台服务器都需要查询6.验证数据库7.常见问题与注意事项总结前言MySQL 双机互备也常被称为主主复制 / Master-Master 复制是一种高可用架构两台 MySQL 服务器互为主从既能各自提供读写服务又能实时同步数据避免单节点故障导致服务中断。下面我会用通俗易懂的方式一步步教你实现 MySQL 双机互备。一、环境准备假设你有两台服务器基础信息如下请替换为你的实际信息表格服务器 IP 地址 角色服务器 A 192.168.1.100 Master1/ Slave2服务器 B 192.168.1.101 Master2/ Slave1前置条件两台服务器安装相同版本的 MySQL推荐 5.7 或 8.0。两台服务器网络互通能 ping 通且 3306 端口开放。关闭防火墙 / SELinux或放行 3306 端口。两台服务器的 server-id 必须不同核心二、核心配置步骤1.修改两台服务器的 MySQL 配置文件MySQL 配置文件通常在 /etc/my.cnfCentOS/RHEL或 /etc/mysql/my.cnfUbuntu/Debian编辑配置文件并添加以下内容服务器 A192.168.1.100配置server-id1 #server的唯一标识 auto_increment_offset1 #自增id起始值 auto_increment_increment2 #每次自增数字 log-bin mysql-bin #打开二进制功能,MASTER主服务器必须打开此项 max_binlog_size1024M #binlog单文件最大值 replicate-do-dbmcsxx replicate-do-dbmcsxx_config replicate-ignore-tablemcsxx.sys_num ##忽略不同步的表 replicate-ignore-tablemcsxx.sys_verify ##忽略不同步的表 slave-skip-errorsall # 启用GTID模式 gtid_mode ON # 强制GTID一致性检查 enforce_gtid_consistency ON # 可选禁用日志校验部分版本需添加 binlog_checksum NONE log_slave_updates ON # 必须开启确保互备时事务日志传递 binlog_format ROW # 推荐ROW模式服务器 B192.168.1.101配置server-id2 #server的唯一标识 auto_increment_offset2 #自增id起始值 auto_increment_increment2 #每次自增数字 log-bin mysql-bin #打开二进制功能,MASTER主服务器必须打开此项 max_binlog_size1024M #binlog单文件最大值 replicate-do-dbmcsxx replicate-do-dbmcsxx_config replicate-ignore-tablemcsxx.sys_num ##忽略不同步的表 replicate-ignore-tablemcsxx.sys_verify ##忽略不同步的表 slave-skip-errorsall # 启用GTID模式 gtid_mode ON # 强制GTID一致性检查 enforce_gtid_consistency ON # 可选禁用日志校验部分版本需添加 binlog_checksum NONE log_slave_updates ON # 必须开启确保互备时事务日志传递 binlog_format ROW # 推荐ROW模式修改完成后重启两台服务器的 MySQL 服务# CentOS/RHEL 7 systemctl restart mysqld # Ubuntu/Debian systemctl restart mysql2.创建复制专用账号在两台服务器上分别创建用于复制的账号权限最小化只授予复制权限服务器 A 上执行给服务器 B 授权CREATE USER repl192.168.1.101 IDENTIFIED BY abcmima; GRANT REPLICATION SLAVE ON *.* TO repl192.168.1.101; FLUSH PRIVILEGES; SHOW MASTER STATUS; # 记录File和Position服务器 B上执行给服务器 A 授权CREATE USER repl192.168.1.100 IDENTIFIED BY abcmima; GRANT REPLICATION SLAVE ON *.* TO repl192.168.1.100; FLUSH PRIVILEGES; SHOW MASTER STATUS; # 记录File和Position3.删除日志文件(从当前开始同步两边都删掉然后重启数据库)rm -rf mysql-bin.* rm -rf localhost-relay-bin.*4.配置互为从库服务器 A 上配置将服务器 B 设为主库RESET MASTER; CHANGE MASTER TO MASTER_HOST192.168.1.101, MASTER_USERrepl, MASTER_PASSWORDabcmima, MASTER_AUTO_POSITION1; START SLAVE; show slave status\G服务器 B上配置将服务器 A 设为主库RESET MASTER; CHANGE MASTER TO MASTER_HOST192.168.1.100, MASTER_USERrepl, MASTER_PASSWORDabcmima, MASTER_AUTO_POSITION1; START SLAVE; show slave status\G5.检查从库状态关键,两台服务器都需要查询SHOW SLAVE STATUS\G;关键检查项确保 Slave_IO_Running 和 Slave_SQL_Running 都是 Yes如果是 No查看 Last_Error 排查问题。6.验证数据库分别在两台服务器上插入修改数据另外一台服务器上数据库查看有没有变化。7.常见问题与注意事项主键冲突主主复制的核心是 auto_increment_increment 和 auto_increment_offset 配置必须保证两台服务器的自增 ID 不重叠。复制状态异常如果 Slave_IO_Running 为 No检查网络 / 账号密码如果 Slave_SQL_Running 为 No检查数据不一致如主键重复。只读设置如果想让其中一台仅作为备库只读可将其 read_only 1注意root 用户不受只读限制。故障切换如果一台服务器宕机可将业务流量切到另一台恢复后重新配置复制即可。总结MySQL 双机互备的核心是主主复制通过开启二进制日志、配置不同的 server-id 和自增步长实现两台服务器数据双向同步。关键配置项log-bin开启二进制日志、log_slave_updates 1允许从库写入二进制日志、auto_increment_increment/offset避免主键冲突。验证时需双向测试数据同步核心检查项是 Slave_IO_Running 和 Slave_SQL_Running 均为 Yes。

相关新闻

拒绝魔法值:用枚举/常量替代,Java代码更易维护

拒绝魔法值:用枚举/常量替代,Java代码更易维护

在Java开发中,我们经常会在代码里看到一些“不明所以”的数字、字符串——比如1、0、"success"、"error"、"UTF-8"。这些直接硬编码在代码中的值,被称为魔法值。魔法值看似节省了几行代码,实则是代码可读性、可…

2026/7/8 3:43:52 阅读更多 →
Linux33:队列

Linux33:队列

1.队列的介绍队列是C/C中最基础的数据结构之一,队列本质上是一种线性表。它遵循着先进先出(fifo)的特点,在队列中一般在队尾插入,队头出队。这就相当于排队一样,刚入队的人需要排在队尾(rear),每次出队的都是在队首(fr…

2026/5/17 9:20:42 阅读更多 →
MobaXterm一站式部署Local AI MusicGen:Windows远程开发方案

MobaXterm一站式部署Local AI MusicGen:Windows远程开发方案

MobaXterm一站式部署Local AI MusicGen:Windows远程开发方案 1. 前言:为什么选择这个方案? 如果你是个Windows用户,又想玩转AI音乐生成,可能遇到过这样的烦恼:本地电脑配置不够,跑不动大模型&…

2026/7/8 3:34:14 阅读更多 →

最新新闻

当 AI 生成的样式需要一间独立房间:Shadow DOM 与 CSS Modules 的样式隔离对决

当 AI 生成的样式需要一间独立房间:Shadow DOM 与 CSS Modules 的样式隔离对决

当 AI 生成的样式需要一间独立房间:Shadow DOM 与 CSS Modules 的样式隔离对决 一、深度引言与场景痛点 AI 生成的组件代码带着自己的样式行李——一段 CSS 声明打包在组件内部,颜色、间距、字号都是自给自足的。当这段代码进入设计系统仓库,…

2026/7/8 3:45:51 阅读更多 →
计算机二级-MySQL学习记录1

计算机二级-MySQL学习记录1

2026.7.7 学习了数据库技术的基本概念和方法,了解了什么是数据库,数据库的特点,什么是DBMS及其功能是什么,理解了数据库系统的特点、结构、数据模型,并且初步接触了关系数据库,并了解了其设计基础以及设计步…

2026/7/8 3:43:51 阅读更多 →
Mac NTFS写入权限完全解锁:开源工具Free-NTFS-for-Mac的5个实用技巧 | 2024指南

Mac NTFS写入权限完全解锁:开源工具Free-NTFS-for-Mac的5个实用技巧 | 2024指南

Mac NTFS写入权限完全解锁:开源工具Free-NTFS-for-Mac的5个实用技巧 | 2024指南 【免费下载链接】Free-NTFS-for-Mac Nigate: An open-source NTFS utility for Mac. It supports all Mac models (Intel and Apple Silicon), providing full read-write access, mou…

2026/7/8 3:43:51 阅读更多 →
2026广州网站建设公司哪家好

2026广州网站建设公司哪家好

2026广州网站建设公司哪家好广州企业搜索本地小程序或网站建设公司时,通常同时关注沟通效率、交付周期和后续维护。但在 SaaS 工具、全国化平台和本地服务商并存的情况下,地域并不是唯一判断条件,企业仍需要把业务目标、人员能力和系统边界放…

2026/7/8 3:41:51 阅读更多 →
建筑装饰新宠!冲孔与雕花铝单板,轻奢质感打造高端空间

建筑装饰新宠!冲孔与雕花铝单板,轻奢质感打造高端空间

建筑装饰新宠!冲孔与雕花铝单板,轻奢质感打造高端空间 在高端建筑装饰领域,冲孔铝单板和雕花铝单板正成为备受青睐的选材。它们究竟有何优势,适用于哪些场景,与普通铝板又有何区别,定制时需要注意什么呢&am…

2026/7/8 3:41:50 阅读更多 →
FitMall-运动优选项目博客

FitMall-运动优选项目博客

FitMall 运动优选:一个完整健身电商平台的技术全解析 从零搭建的全栈健身电商平台,涵盖商品交易、AI 智能助手、社区互动、训练管理四大核心模块。本文将拆解其技术选型、架构设计、关键实现细节与工程经验。 目录 项目概览技术栈一览架构设计那些有意思…

2026/7/8 3:37:50 阅读更多 →

日新闻

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients. 项目地址: …

2026/7/8 0:00:48 阅读更多 →
MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N1 到批处理的全路径 一、从"功能正确"到"性能可接受"——MyBatis 批量操作的三段式进化 MyBatis 在日常增删改查场景中几乎是无感的——实体映射直观、SQL 控制灵活。但当数据量从千级上升到十万级、百万级,许…

2026/7/8 0:00:48 阅读更多 →
工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

1. 工业负载控制方案概述在工业自动化、电机驱动和照明控制等高需求场景中,可靠地控制电感和电阻负载是核心挑战之一。TPD2015FN作为东芝的8通道高端智能功率开关IC,配合PIC18F45K22微控制器,能够构建一套稳定、高效的负载控制系统。这套组合…

2026/7/8 0:02:48 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻