成都网站建设招商网站建设

连云港市千栀味食品贸易有限公司 2026/09/09 18:52:27

什么是数据同步?

想想这样一个场景:今天10点开放考试成绩查询的入口,那么在10点钟会有一大波流量高峰,一台服务器肯定扛不住了。而且这种情况几乎没有数据更新操作,都是数据查询。

类似这样的查询请求非常高的情况下,适合用数据库的主从复制,多台服务器分散数据库的压力。

简单说就是有多台服务器,都安装了MySQL数据库,其中一台服务器上的MySQL数据库被人为定义为主数据库,负责数据的增删改操作。

剩下的所有服务器,都被定义为从数据库。

主数据库所有执行过的脚本,会自动保存为binlog日志文件。从数据库自动向主数据库获取主数据库的binlog文件,并自动在从数据库执行binlog中的命令。从而达到主从数据库数据同步。

如何数据同步?

要完成主从数据同步,不需要额外工具,MySQL提供了主从数据同步的功能。主要分为两步:

第一步是主数据库创建用户,并赋权给从数据库。

第二步是从数据库定义对应主数据库的参数,也就是要能找到那台服务器是主数据库。

主数据库配置操作

#=====MASTER脚本(主库)=========

#slave 是用户名 后面 slave 是密码
#是允许访问的远程IP地址,这里要写从属服务器的IP
create user 'slave'@'192.168.10.51' IDENTIFIED by 'slave';

#为slave用户授予主从复制的权限
grant replication slave on *.* to 'slave'@'192.168.10.51';

#激活权限
flush PRIVILEGES;

注意:如果有多个从库,create user XXX,grant replication XXX,这两个语句写多份即可,IP需要是对应从库的IP。用户名和密码建议每个从库设置不一样的值,便于区分。例如:slave1、slave2...

查询主数据库状态

show master status;

file字段的值就是当前主数据库binlog文件的名称,随着数据库中数据的不断操作,binlog文件也会自动增加。

查看binlog文件的内容

show binlog events in 'binlog.000003';

Pos是binlog日志文件开始位置。

End_log_pos是binlog文件结束位置。

Log_name是binlog日志文件名称。

Event_type是数据库操作的类型。

Info是操作对应的脚本。

从数据库配置操作

首先要把数据库配置改下,避免与主库冲突。

找到数据库安装目录下面的my.ini文件

修改server-id属性的值。

修改完成后,重启MySQL服务。

#========SLAVE脚本(从库)==========

RESET SLAVE ALL;


CHANGE MASTER TO
MASTER_HOST='192.168.0.111'
,MASTER_PORT=3306
,MASTER_USER='slave'
,MASTER_PASSWORD='slave'
,MASTER_LOG_FILE='binlog.000003'
,MASTER_LOG_POS=210099380;

192.168.0.111地址为主库的IP地址,需要能够在从库的服务器上访问到这个IP。

下面的用户名和密码,对应主库创建的用户名和密码。

MASTER_LOG_FILE:主库binlog文件名称

MASTER_LOG_POS:主库的该位置后的操作,会自动往从库进行同步,值来自主库的show master status;查询结果的Position字段值。

开始主从复制

start slave;

查询从库状态

show slave status;

确保这两个字段值都是Yes,说明主从配置完成。

注意:如果有多个从库,把上面的操作分别在每个从库进行操作,注意MASTER_USER、MASTER_PASSWORD的值需要与主库设置的值相同。

主从同步实践

主库进行操作,观察从库变化。

主库新建数据库hello

主库创建hello数据库后,从库刷新一下,在从库中也看到了hello数据库。

对主库的所有操作,都会实时同步到从库,包括建表,数据更新等操作。

主动同步就这样创建好了。

注意事项?

网络要求,主从数据库网络互通。

主从数据库的版本要一致,否则可能会出现版本兼容问题。通过select VERSION();命令查询数据库版本号。

主从数据库的server-id不能相同,会冲突,在数据库配置文件my.ini中可以修改。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

娄底网站建设php网站建设

YOLOv8部署到云服务器的完整流程(含docker run参数)在AI工程实践中,最令人头疼的问题之一不是模型训练本身,而是“为什么我的代码在

2026/06/30 11:32:57

海口网站建设齐齐哈尔网站建设

在最新发布的《2025年全球最常用的200个密码》报告中,“123456”这一“经典弱密码”再次霸榜,“admin”、“12345678”、“123456789”、“123

2026/06/30 11:33:26

深圳网站建设河北网站建设

4步拆解微前端:从性能瓶颈到架构升级的完整方案【免费下载链接】umiA framework in react community ✨项目地址: https://gitcode.com/G

2026/06/30 11:01:53

吉安网站建设网站建设知识

UNIX 用户管理:停机通知、用户关怀与离职处理在使用 UNIX 服务器时,停机是不可避免的一部分,合理处理停机通知、与用户保持良好关系以及妥善处理用户离职等问题,对于服务器管理员来说至关重要。1.

2026/06/30 12:46:02

唐山网站建设万州网站建设

前言好的测试用例一定是一个完备的集合,它能够覆盖所有等价类以及各种边界值,而跟能否发现缺陷无关好的测试用例必须具备哪些特征整体完备性:一定是一个完备的整体&#

2026/06/30 13:06:34

房产网站建设福田网站建设

从零开始掌握Artisan:咖啡烘焙师的终极可视化工具指南【免费下载链接】artisanartisan: visual scope for coffee roasters项目地址: ht

2026/06/30 11:59:58

六安网站建设齐齐哈尔网站建设

Windows Server 管理与维护全攻略在企业网络环境中,Windows Server 的管理与维护至关重要,涉及到系统更新、安全防护、数据备份等多个方面。下面将详细介绍相关的操作和配置方法。1

2026/06/30 14:09:09

网站正在建设中遵义网站建设

自动化测试时代的缺陷管理挑战随着DevOps和持续集成/持续部署(CI/CD)流程的普及,自动化测试已成为软件质量保障的核心环节。然而,自动化测试脚本自身的缺陷修复仍高度依

2026/06/30 12:46:33

北海网站建设成都建设网站

chromedriver等待元素出现确保IndexTTS2页面加载完成在部署新一代文本转语音系统 IndexTTS2 的自动化任务时,一个看似简单却极易出错的问题浮出水面:

2026/06/30 13:25:35

免费建设网站洛阳网站建设

面包君:真正的超越,不是在竞争和比较中胜出,而是高出竞争和比较的维度,让这些竞争和比较直接失去意义,就像是旧系统是一栋10层普通平

2026/06/30 10:58:23