讲讲MySQL主从复制的原理和注意事项??

数据库 MySQL
作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。

 [[351965]]

作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。自开源半年多以来,已成功为十几家中小型企业提供了精准定时调度方案,经受住了生产环境的考验。为使更多童鞋受益,现给出开源框架地址:https://github.com/sunshinelyz/mykit-delay

写在前面

最近在写Mycat专题,由于不少小伙伴最近要出去面试,问我能不能简单写下MySQL的主从复制原理和注意事项,因为在之前的面试中被问到了这些问题。我:可以啊,安排上了!!

主从复制原理

(1) Master 将数据改变记录到二进制日志(binary log)中,也就是配置文件 log-bin 指定的文件, 这些记录叫做二进制日志事件(binary log events);

(2) Slave 通过 I/O 线程读取 Master 中的 binary log events 并写入到它的中继日志(relay log);

(3) Slave 重做中继日志中的事件,把中继日志中的事件信息一条一条的在本地执行一次,完 成数据在本地的存储,从而实现将改变反映到它自己的数据(数据重放)。

注意事项

(1)主从服务器操作系统版本和位数一致;

(2) Master 和 Slave 数据库的版本要一致;

(3) Master 和 Slave 数据库中的数据要一致;

(4) Master 开启二进制日志,Master 和 Slave 的 server_id 在局域网内必须唯一;

配置主从复制步骤

Master数据库

(1) 安装数据库;

(2) 修改数据库配置文件,指明 server_id,开启二进制日志(log-bin);

(3) 启动数据库,查看当前是哪个日志,position 号是多少;

(4) 登录数据库,授权数据复制用户(IP 地址为从机 IP 地址,如果是双向主从,这里的 还需要授权本机的 IP 地址,此时自己的 IP 地址就是从 IP 地址);

(5) 备份数据库(记得加锁和解锁);

(6) 传送备份数据到 Slave 上;

(7) 启动数据库;

以上步骤,为单向主从搭建成功,想搭建双向主从需要的步骤:

(1) 登录数据库,指定 Master 的地址、用户、密码等信息(此步仅双向主从时需要);

(2) 开启同步,查看状态;

Slave 上的配置

(1) 安装数据库;

(2) 修改数据库配置文件,指明 server_id(如果是搭建双向主从的话,也要开启二进制 日志 log-bin);

(3) 启动数据库,还原备份;

(4) 查看当前是哪个日志,position 号是多少(单向主从此步不需要,双向主从需要);

(5) 指定 Master 的地址、用户、密码等信息;

(6) 开启同步,查看状态。

好了,今天就到这儿吧,后续我们实战以各种方式实现MySQL主从复制,我是冰河,我们下期见!!

本文转载自微信公众号「冰河技术」,可以通过以下二维码关注。转载本文请联系冰河技术公众号。

 

责任编辑:武晓燕 来源: 冰河技术
相关推荐

2024-07-04 08:00:24

2017-09-05 16:00:49

MySQL主从复制备份

2018-05-16 15:26:43

数据库MySQL主从复制

2021-01-12 09:03:17

MySQL复制半同步

2020-04-14 16:26:22

MySQL线程同步

2023-12-25 08:02:09

2024-07-04 17:22:23

2023-04-06 13:15:48

MySQL复制原理应用实践

2021-06-08 07:48:27

MySQL主从配置

2024-03-01 18:33:59

MySQL节点数据

2017-10-11 15:40:20

MySQL主从复制拓扑结构

2010-06-13 15:52:36

MySQL 复制设置

2023-03-19 11:53:27

2010-11-26 16:27:01

MySQL使用变量

2023-03-19 22:38:12

逻辑复制PostgreSQL

2023-12-29 13:45:00

2021-03-19 11:33:42

MySQL数据库备份

2017-06-23 22:00:13

MySqlsslcentos

2024-02-21 16:42:00

2014-05-16 10:04:19

JavaScriptthis原理
点赞
收藏

51CTO技术栈公众号