如何在mysql中配置主从复制_mysql主从复制安装配置

主从复制通过主库记录binlog、从库重放实现数据同步。步骤:1. 主库配置server-id、开启binlog并创建复制用户;2. 从库设置唯一server-id、启用中继日志并设为只读;3. 从库执行CHANGE MASTER指向主库,启动复制;4. 验证数据一致性。需确保网络通、权限对、配置准。

如何在mysql中配置主从复制_mysql主从复制安装配置

MySQL主从复制是一种常见的数据库架构,用于实现数据的高可用、读写分离和备份。配置主从复制的基本思路是:主库(Master)记录数据变更并生成二进制日志(binlog),从库(Slave)读取主库的binlog并重放,从而保持数据一致。以下是详细的安装与配置步骤。

1. 环境准备

确保主从服务器已安装MySQL,并能正常运行。假设:

主库IP:192.168.1.100从库IP:192.168.1.101MySQL版本:5.7 或 8.0(操作类似)

确认两台服务器之间网络互通,防火墙开放3306端口,且MySQL允许远程连接。

2. 配置主库(Master)

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

[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-format = ROW
expire_logs_days = 7
max_binlog_size = 100M

说明:

server-id:唯一标识主库,不能与从库重复log-bin:启用二进制日志并指定文件名前缀binlog-format:推荐使用ROW格式,更安全

保存后重启MySQL服务:

systemctl restart mysqld

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

CREATE USER ‘repl’@’192.168.1.101’ IDENTIFIED BY ‘your_password’;
GRANT REPLICATION SLAVE ON *.* TO ‘repl’@’192.168.1.101’;
FLUSH PRIVILEGES;

查看主库状态,获取当前binlog位置:

SHOW MASTER STATUS;

记下 File 和 Position 的值,后续从库配置需要使用。

3. 配置从库(Slave)

编辑从库的 my.cnf 文件:

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

说明:

server-id:必须唯一,不能与主库相同relay-log:指定中继日志名称read-only:防止从库被误写

重启从库MySQL服务:

Replit Ghostwrite Replit Ghostwrite

一种基于 ML 的工具,可提供代码完成、生成、转换和编辑器内搜索功能。

Replit Ghostwrite 93 查看详情 Replit Ghostwrite systemctl restart mysqld

登录MySQL,执行CHANGE MASTER命令:

CHANGE MASTER TO
MASTER_HOST=’192.168.1.100′,
MASTER_USER=’repl’,
MASTER_PASSWORD=’your_password’,
MASTER_LOG_FILE=’mysql-bin.000001′,
MASTER_LOG_POS=154;

注意:MASTER_LOG_FILE 和 MASTER_LOG_POS 使用主库 SHOW MASTER STATUS 输出的实际值。

启动复制:

START SLAVE;

查看复制状态:

SHOW SLAVE STATUS\G

重点关注以下两个字段:

Slave_IO_Running: YesSlave_SQL_Running: Yes

若均为Yes,表示复制正常运行。如果有错误,检查错误信息并排查网络、权限或配置问题。

4. 验证主从复制

在主库执行:

CREATE DATABASE IF NOT EXISTS test_replication;
USE test_replication;
CREATE TABLE t1 (id INT);
INSERT INTO t1 VALUES (1);

登录从库,执行:

SHOW DATABASES LIKE ‘test_replication’;
SELECT * FROM test_replication.t1;

如果能看到数据库和数据,说明复制成功。

基本上就这些。配置主从复制不复杂,但要注意 server-id 唯一性、网络连通性、用户权限和日志位置的准确性。一旦配置完成,建议定期监控复制延迟和状态,确保系统稳定。

以上就是如何在mysql中配置主从复制_mysql主从复制安装配置的详细内容,更多请关注创想鸟其它相关文章!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
为什么现代框架推荐使用CSS-in-JS?Emotion与Styled-Components的核心优势对比
上一篇 2025年12月2日 12:20:23
4万美元买免费游戏?《堡垒之夜》实体版拍卖创纪录
下一篇 2025年12月2日 12:20:26

相关推荐

  • 开源免费PHP工具 PHP开发效率提升利器

    推荐开源免费PHP开发工具以提升效率:VS Code、Sublime Text轻量高效,PhpStorm专业强大;调试用Xdebug、Kint、Ray;依赖管理选Composer;代码质量工具包括PHPStan、Psalm、PHP_CodeSniffer;数据库管理可用%ignore_a_1%MyA…

    2026年5月10日
    000
  • Golang JSON序列化:控制敏感字段暴露的最佳实践

    本教程探讨golang中如何高效控制结构体字段在json序列化时的可见性。当需要将包含敏感信息的结构体数组转换为json响应时,通过利用`encoding/json`包提供的结构体标签,特别是`json:”-“`,可以轻松实现对特定字段的忽略,从而避免敏感数据泄露,确保api…

    2026年5月10日
    000
  • 修复点击时按钮抖动:CSS垂直对齐实践

    本文探讨了在Web开发中,交互式按钮(如播放/暂停按钮)在点击时发生意外垂直位移的问题。通过分析CSS样式变化对元素布局的影响,我们发现这是由于按钮不同状态下的边框样式和内边距改变,以及默认的垂直对齐行为共同作用所致。核心解决方案是利用CSS的vertical-align属性,将其设置为middle…

    2026年5月10日
    000
  • 《魔兽世界》将于6月11日开启国服回归技术测试

    《魔兽世界》将于6月11日开启国服回归技术测试《魔兽世界》将于6月11日开启国服回归技术测试《魔兽世界》将于6月11日开启国服回归技术测试《魔兽世界》将于6月11日开启国服回归技术测试

    《%ign%ignore_a_1%re_a_1%》官方宣布,将于6月11日开启国服回归技术测试,时间为7天,并称可以在6月内正式开服,玩家们可以访问官网下载战网客户端并预下载“巫妖王之怒”客户端,技术测试详情见下图。 WordAi WordAI是一个AI驱动的内容重写平台 53 查看详情 以上就是《…

    2026年5月10日 用户投稿
    200
  • 如何在HTML中插入表单元素_HTML表单控件与输入类型使用指南

    HTML表单通过标签构建,包含action和method属性定义数据提交目标与方式,常用input类型如text、password、email等适配不同输入需求,配合label、required、placeholder提升可用性,结合textarea、select、button等控件实现完整交互,是…

    2026年5月10日
    000
  • 深入理解 Express.js 中 next() 参数的作用与中间件机制

    本文深入探讨 express.js 中间件函数中的 `next()` 参数。它负责将控制权传递给请求-响应周期中的下一个中间件或路由处理程序。文章将详细解释 `next()` 的工作原理、中间件的注册与执行顺序,以及不正确使用 `next()` 可能导致请求挂起的风险,并通过代码示例和实际应用场景,…

    2026年5月10日
    000
  • JavaScript 动态菜单点击高亮效果实现教程

    本教程详细介绍了如何使用 JavaScript 实现动态菜单的点击高亮功能。通过事件委托和状态管理,当用户点击菜单项时,被点击项会高亮显示(绿色),同时其他菜单项恢复默认样式(白色)。这种方法避免了不必要的DOM操作,提高了性能和代码可维护性,确保了无论点击方向如何,功能都能稳定运行。 动态菜单高亮…

    2026年5月10日
    200
  • c++如何实现UDP通信_c++基于UDP的网络通信示例

    UDP通信基于套接字实现,适用于实时性要求高的场景。1. 流程包括创建套接字、绑定地址(接收方)、发送(sendto)与接收(recvfrom)数据、关闭套接字;2. 服务端监听指定端口,接收客户端消息并回传;3. 客户端发送消息至服务端并接收响应;4. 跨平台需处理Winsock初始化与库链接,编…

    2026年5月10日
    100
  • MySQL数据库不支持中文的解决办法

    接上一篇文章,在解决了mysql+flask环境配置问题之后,往数据库存中文字符串会报1366错误,提示不正确的字符。继而发现默认的mysql采用了latin1字符集,这种编码是不支持中文的。 如果想支持中文的话,需要设置一下mysql字符集。 众所周知utf-8是可以的,gbk也没问题,为了可扩展…

    用户投稿 2026年5月10日
    000
  • CodeIgniter在IIS环境下实现URL重写与index.php移除指南

    本教程详细指导如何在IIS服务器上部署的CodeIgniter应用中,移除URL中不必要的index.php。核心解决方案涉及修改CodeIgniter的config.php文件,将$config[‘index_page’]设置为空,并辅以正确的IIS web.config重…

    2026年5月10日
    100
  • Go语言连接外部MySQL数据库:DSN配置与常见错误解析

    本文详细阐述了go语言使用`go-sql-driver/mysql`驱动连接外部mysql数据库的正确方法。重点介绍了数据源名称(dsn)的规范格式,特别是主机地址部分的配置,以避免常见的“getaddrinfow: the specified class was not found.”等网络解析错…

    2026年5月10日
    000
  • php超过字数怎么解密_用PHP分段处理超字数加密数据并解密教程【技巧】

    分段解密超长加密数据需先确定算法限制,再通过OpenSSL扩展支持,编写函数逐段解密并拼接结果。1、明确加密算法与密钥对应的分段大小;2、启用php.ini中openssl扩展并重启服务;3、自定义函数读取私钥、base64解码密文、循环截取块解密;4、确保去除密文换行符并按原加密块大小切分;5、解…

    2026年5月10日
    000
  • PHP代码注入检测日志分析_PHP代码注入日志检测方法详解

    答案:日志分析是发现PHP代码注入的关键手段,主要通过Web服务器访问日志、PHP错误日志、PHP-FPM日志及应用自定义日志等多源数据,结合grep、ELK、WAF等工具识别含eval()、system()、Base64编码、目录遍历等特征的异常请求,并建立基线、设置检测规则与自动化告警,配合事件…

    2026年5月10日
    000
  • C#如何进行网络编程?Socket与TCP/IP通信编程实例详解

    C#通过Socket类实现TCP通信,首先服务器绑定IP和端口并监听,客户端发起连接,双方通过Send/Receive收发数据,最后关闭连接。 C# 进行网络编程主要依赖于 System.Net 和 System.Net.Sockets 命名空间,其中最核心的是使用 Socket 类实现基于 TCP…

    2026年5月10日
    000
  • Voyager 中关联关系的翻译问题解决方案

    本文档旨在解决在使用 TCGVoyager 管理后台时,关联模型无法正确翻译的问题。主要针对 Laravel 项目中,使用 Voyager 1.4 版本以及 Laravel 8.0 版本,并且已经配置多语言支持的情况下,如何确保关联关系中的可翻译字段能够根据当前应用语言环境进行正确翻译。通过修改 B…

    2026年5月10日
    000
  • 如何使用AutoKeras训练AI大模型?自动构建神经网络的指南

    AutoKeras在AI大模型训练中扮演“智能建筑师”角色,通过自动化神经架构搜索与超参数优化,加速模型开发迭代。它基于Keras/TensorFlow,支持图像、文本、结构化数据任务,提供ImageClassifier、TextClassifier等接口,用户只需设定max_trials和epoc…

    2026年5月10日
    300
  • 实时音频转音素实现2D角色唇语同步教程

    本文详细介绍了如何将实时麦克风音频转换为音素,以实现2D角色唇语同步。核心方法是分两步走:首先利用语音转文本(STT)服务(如Python SpeechRecognition库)将实时音频转换为单词,然后使用CMU Dict库将这些单词映射为对应的音素。文章还将探讨如何进一步将CMU音素转换为国际音…

    2026年5月10日
    000
  • Go API 文档利器:godoc 的实践与应用

    `godoc` 是 go 语言官方提供的强大工具,能将符合规范的注释自动转换为专业且易于导航的 api 文档,其风格与 go 官网一致。本文将详细指导如何利用 `godoc` 在本地生成并浏览您的 go 项目文档,解决常见配置问题,助您高效展示代码api。 1. godoc 简介与 Go 注释规范 …

    2026年5月10日
    000
  • 后缀php怎么打开_php文件打开方式与运行环境搭建指南

    要打开PHP文件需根据用途选择方式:查看代码可用文本编辑器或IDE,运行则需服务器环境。推荐新手使用XAMPP、WAMP等集成环境,将文件放入htdocs目录后访问localhost;开发者可利用PHP内置服务器,命令行执行php -S localhost:8000运行;高级用户可手动配置Apach…

    2026年5月10日
    000
  • 使用SMTP.js发送邮件:客户端集成、常见问题与最佳实践指南

    本文深入探讨了使用SMTP.js库在前端发送邮件时可能遇到的问题,特别是与Elastic Email集成时的挑战。我们将分析代码中常见的异步处理错误、条件函数定义陷阱,并提供修正后的代码示例和最佳实践。重点强调了正确处理Promise链、确保函数可访问性以及客户端邮件发送的安全考量,帮助开发者构建更…

    2026年5月10日
    000

发表回复

登录后才能评论
关注微信