新闻详情

新闻详情

首页 / 资讯中心 / 详情

MySQL 5.7主从同步功能

发布时间:2026/9/30 10:59:57来源:尧图网络
MySQL 5.7主从同步功能
目录一、环境准备二、主库配置1. 修改配置文件2. 创建复制用户3. 查看主库状态三、从库配置1. 修改配置文件2. 配置主从同步四、验证同步状态1. 查看从库状态2. 测试数据同步五、MySQL主从同步与Canal、Otter在功能上的区别六、创建mysql用户并赋权样例解析第一条语句创建用户第二条语句授予数据库权限第三条语句授予全局复制权限综合总结以下是一个完整的MySQL 5.7主从同步实例包含环境准备、配置步骤及验证过程一、环境准备主库MasterIP192.168.1.100操作系统CentOS 7MySQL版本5.7.44从库SlaveIP192.168.1.101操作系统CentOS 7MySQL版本5.7.44二、主库配置1. 修改配置文件编辑/etc/my.cnf添加以下内容[mysqld] server-id1 # 主库唯一ID log-binmysql-bin # 开启二进制日志 binlog_formatROW # 推荐使用ROW格式 binlog-do-dbtest # 仅同步test库可选 expire_logs_days7 # 日志保留7天重启MySQLsystemctl restart mysqld2. 创建复制用户登录MySQL执行CREATE USER repl192.168.1.101 IDENTIFIED BY Repl123456; GRANT REPLICATION SLAVE ON *.* TO repl192.168.1.101; FLUSH PRIVILEGES;3. 查看主库状态执行SHOW MASTER STATUS;**记录输出中的File和Position**如mysql-bin.000001、154后续从库配置需使用。三、从库配置1. 修改配置文件编辑/etc/my.cnf添加以下内容[mysqld] server-id2 # 从库唯一ID不能与主库重复 relay-logmysql-relay-bin # 开启中继日志 read_only1 # 从库只读生产环境建议开启重启MySQLsystemctl restart mysqld2. 配置主从同步登录从库MySQL执行CHANGE MASTER TO MASTER_HOST192.168.1.100, MASTER_USERrepl, MASTER_PASSWORDRepl123456, MASTER_LOG_FILEmysql-bin.000001, # 主库记录的File MASTER_LOG_POS154; # 主库记录的Position START SLAVE; # 启动同步四、验证同步状态1. 查看从库状态在从库执行SHOW SLAVE STATUS\G关键字段说明Slave_IO_RunningYes表示从库正在拉取主库日志。Slave_SQL_RunningYes表示从库正在执行日志中的SQL。Seconds_Behind_Master0表示无延迟若为NULL需检查网络或权限。2. 测试数据同步在主库插入数据USE test; INSERT INTO users (name, age) VALUES (Alice, 25), (Bob, 30);在从库查询数据USE test; SELECT * FROM users; # 应看到与主库一致的数据五、MySQL主从同步与Canal、Otter在功能上的区别MySQL主从复制通过binlog是MySQL数据库内置的功能通过复制binlog日志来实现数据的同步。支持异步、半同步和全同步复制。主要用于数据备份、读写分离、高可用性等场景。Canal是阿里巴巴开源的基于MySQL binlog的增量日志订阅和消费组件。模拟MySQL slave的交互协议伪装自己为MySQL slave向MySQL master发送dump协议获取binlog解析并存储。常用于将MySQL的数据变更同步到其他数据存储如Elasticsearch、Redis、HBase等或用于缓存更新、消息通知等。Otter也是阿里巴巴开源的分布式数据库同步系统基于Canal。提供分布式、可靠、低延迟的数据同步解决方案支持双向同步、冲突检测和解冲突等。主要用于跨机房、跨地域的数据同步支持多源、多目标、双向同步等复杂场景。六、创建mysql用户并赋权样例解析mysql CREATE USER maxwell% IDENTIFIED BY 123456; mysql GRANT ALL ON maxwell.* TO maxwell%; mysql GRANT SELECT, REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO maxwell%;这些SQL语句的总体目的是创建一个名为 maxwell 的数据库用户并授予其特定的权限通常是为了让这个用户能够作为MySQL的数据同步工具如Maxwell、Canal等连接并捕获数据库的变更。第一条语句创建用户mysql CREATE USER maxwell% IDENTIFIED BY 123456;含义解释CREATE USER: 这是创建一个新用户的命令。maxwell%: 这是指定用户名和允许其连接的主机。maxwell: 是新创建的用户名。: 是分隔符。%: 是一个通配符代表任意主机。这意味着用户maxwell可以从任何IP地址或任何一台机器上连接到这个MySQL服务器。这在开发和测试环境中很方便但在生产环境中存在安全风险通常会限制为特定的IP地址例如maxwell192.168.1.100。IDENTIFIED BY 123456: 这部分设置了用户的登录密码。用户maxwell的密码被设置为123456。一句话总结创建一个名为maxwell的用户密码是123456并允许他从任何地方连接到MySQL服务器。第二条语句授予数据库权限mysql GRANT ALL ON maxwell.* TO maxwell%;含义解释GRANT: 这是授予权限的命令。ALL: 这是一个权限的简写代表所有权限如SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER等。ON maxwell.*: 这指定了权限应用的范围。maxwell: 是数据库名。.*: 是一个通配符代表该数据库中的所有表。所以maxwell.*的意思是在maxwell这个数据库里的所有表上。TO maxwell%: 指明将权限授予哪个用户。这里就是授予我们刚刚创建的maxwell用户。一句话总结授予用户maxwell对名为maxwell的数据库及其所有表拥有完全的增删改查和管理权限。这通常是为了让maxwell工具能自己创建和操作它所需要的状态表、配置表等。第三条语句授予全局复制权限mysql GRANT SELECT, REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO maxwell%;含义解释GRANT: 授予权限的命令。SELECT, REPLICATION CLIENT, REPLICATION SLAVE: 这是授予的三个核心权限每个都非常重要SELECT: 允许用户从任何表中读取数据。对于数据同步工具来说这是为了能读取表的元数据如表结构和初始数据。REPLICATION CLIENT: 允许用户查询主服务器的二进制日志binlog文件和位置信息。执行SHOW MASTER STATUS;命令就需要这个权限。这是数据同步工具找到从哪里开始读取变更的关键。REPLICATION SLAVE: 允许用户连接到主服务器并请求其binlog数据流。这是实现数据实时同步的核心权限。没有这个权限工具就无法接收到数据库的增量变更。ON *.*: 这指定了权限应用的范围。第一个*代表所有数据库。第二个*代表所有表。所以*.*的意思是在整个MySQL服务器实例的所有数据库和所有表上。这使得这些权限成为全局权限。TO maxwell%: 再次指明将这些权限授予用户maxwell。一句话总结授予用户maxwell在整个MySQL服务器范围内的全局权限使其能够读取任何数据、查询复制状态以及作为“从库”一样拉取主库的二进制日志数据。综合总结这三条SQL语句组合在一起完整地完成了为数据同步工具如Maxwell准备专用账户的工作创建账户先建立一个叫maxwell的登录凭证。配置工作空间给这个账户一个专属的数据库maxwell让它在里面可以自由地读写和管理自己的配置信息而不会干扰其他业务数据库。授予核心能力最后授予它读取整个MySQL实例变更数据binlog的核心能力这是实现实时数据同步的根本。因此执行完这些命令后maxwell这个用户就具备了连接MySQL、监控并捕获所有数据库变更所需的最小但必要权限集合。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【会议征稿通知 | IEEE出版 | 四川工商学院主办】第三届智能驾驶与智慧交通国际学术会议(IDST 2026) 2026/9/30 11:26:54

【会议征稿通知 | IEEE出版 | 四川工商学院主办】第三届智能驾驶与智慧交通国际学术会议(IDST 2026)

第三届智能驾驶与智慧交通国际学术会议(IDST 2026) 2026 3rd International Conference on Intelligent Driving and Smart Transportation 智能驾驶和智慧交通利用新兴技术,使城市出行更加方便、更具成本效益且更安全。在此背景下&#xf…

阅读更多 →
(undone) quard_star_tutorial - ch2 添加qemu仿真板 - Quard-Star板 2026/9/30 11:26:54

(undone) quard_star_tutorial - ch2 添加qemu仿真板 - Quard-Star板

url: https://quard-star-tutorial.readthedocs.io/zh-cn/latest/ch2.html首先把之前下载解压的 qemu-6.0.0 删掉 随后 clone 教程的 ch2 tag,切换到 git repo 的目的是为了方便追踪我们的代码修改。 git clone --branch ch2 --single-branch --no-tags https://git…

阅读更多 →
【连续多届稳定出版,快至会后3个月检索】第六届新能源与电力工程国际学术会议(ICNEPE 2026) 2026/9/30 11:26:54

【连续多届稳定出版,快至会后3个月检索】第六届新能源与电力工程国际学术会议(ICNEPE 2026)

第六届新能源与电力工程国际学术会议(ICNEPE 2026) 2026 6thInternational Conference on New Energy and Power Engineering 第六届新能源与电力工程国际学术会议(ICNEPE 2026)将于2026年11月20日至22日在中国广州隆重举行。会…

阅读更多 →
MAVLink 协议 2026/9/30 11:26:54

MAVLink 协议

MAVLink 协议 MAVLink 是消息层协议,不包含物理层与传输层。 它只规定「帧格式与消息字典」,所以同一套消息能跑在串口、UDP、CAN、数传等不同承载上;丢包表现为「数据陈旧」而非「连接中断」,指令的可靠性靠 ACK + seq 序号 + 上层重传。 适用人群与前置 面向:飞控系统 /…

阅读更多 →
HCP 地址老冲突 / 分不到?地址池 + 租约实战指南 2026/9/30 11:26:54

HCP 地址老冲突 / 分不到?地址池 + 租约实战指南

手工配 IP 的网段,迟早会撞地址。DHCP 把地址与网络参数集中到一台服务器上发,客户端开机即用。这篇先把 DORA 四步握手里每个报文的源地址、目的地址与广播方式讲清,再说租约到期前后客户端做了什么,然后给出完整的服务端与客户端…

阅读更多 →
物联网设备数据采集与分析全链路实战:从协议选型到运营闭环 2026/9/30 11:26:47

物联网设备数据采集与分析全链路实战:从协议选型到运营闭环

干物联网这行这几年,我见过太多项目是在“上系统”之前没想清楚:设备接上来了,数据也存了,回头看却不知道下一步怎么用。真正能把物联网(IoT)大数据运营做起来的团队,多数不是把精力花在炫酷面板…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉