广告
返回顶部
首页 > 资讯 > 数据库 >MySQL进阶——主从复制
  • 991
分享到

MySQL进阶——主从复制

MySQL进阶——主从复制 2019-05-12 21:05:11 991人浏览 绘本
摘要

  1.主从复制的基本原理 slave会从master读取binlog来进行数据同步。主要有以下三个步骤: ①master将改变记录到二进制日志(binary log),这些记录过程叫做二进制日志事件(binary log e

MySQL进阶——主从复制

attachments-2020-03-nSwxNjkM5e79698370399.jpg

 

1.主从复制的基本原理

slave会从master读取binlog来进行数据同步。主要有以下三个步骤:

①master将改变记录到二进制日志(binary log),这些记录过程叫做二进制日志事件(binary log events)。

②slave将master的binary log events拷贝到中继日志(relay log)。

③slave重做中继日志中的事件,将改变应用到自己的数据库中。Mysql的复制是异步且串行化的。

v2-45e6eb9a8cd6849617e55274bd6fc898_720w.jpg

 

2.主从复制的规则

①每个slave只能有一个master。(一对一)

②每个slave只能有一个唯一的服务器ID。

③每个master可以有多个slave。(一对多)

在主从复制过程中,最大的问题就是延时。

 

3.一主一从的常见配置

#1.要求。

mysql版本最好一致且后台以服务运行。并且保证主机与从机互相ping通。主从配置都在[mysqld]结点下,都是小写。

#2.主机修改my.ini配置文件

①server-id=1,主机服务器id。(必须)

②必须启用二进制文件。

log-bin="E:devSoftmysql-5.7.22-winx64datamysql-bin"

配置该项后,重新启动mysql服务,可看到如下内容。

v2-6e7f3fe2702869c5591a33da7f28c4f5_720w.jpg

③启用错误日志。(可选)

log_error ="E:devSoftmysql-5.7.22-winx64datalogerrorloglog_error.log"

④根目录、数据目录。(可选)

#mysql安装根目录 basedir ="E:devSoftmysql-5.7.22-winx64"   #mysql数据文件所在位置 datadir ="E:devSoftmysql-5.7.22-winx64data"

⑤临时目录。(可选)

tmpdir  ="E:devSoftmysql-5.7.22-winx64"

⑥read-only=0,表示主机读写都可以。

⑦可设置不需要复制的数据库。(可选)

binlog-ignore-db=mysql

⑧可设置需要复制的数据库。(可选)

binlog-do-db=databasename

#3.从机修改my.cnf配置文件

①从服务器ID。(必须)

②启用二进制日志。(可选)

#4.主机与从机都关闭防火墙,其实也可配置ip规则,但关闭防火墙更快速。

#5.在windows主机上建立账户并授权给slave。

a.首先在主机上创建账户:

#%表示任何客户端都可以连接 grant all privileges on *.* to slaveaccount(用户名)@"%(或者指定ip)" identified by "你想设置的密码" with grant option;

b.然后刷新权限表:

flush privileges;

c.然后授权给slave:

GRANT REPLICATION SLAVE ON *.* TO "slaveaccount(上面创建的用户名)"@"从机数据库ip" IDENTIFIED BY "你想设置的密码"

d.利用b步骤命令再次刷新权限表。

#6.查询master的状态。

v2-19db90cdc229112b893405e6d9ff9302_720w.jpg

File和Position这两个字段非常重要,File告诉从机需要从哪个文件进行复制,Position告诉从机从文件的哪个位置开始复制,在从机上配置时需用到。执行完此操作后,尽量不要在操作主服务器MySQL,防止主服务器状态变化(File和Position状态变化)。

#7.在linux从机上配置需要的主机。

CHANGE MASTER TO MASTER_HOST="主机IP",MASTER_USER="salveaccount",MASTER_PASSWord="主机授权的密码",MASTER_LOG_FILE="File名字",MASTER_LOG_POS=Position数字;

#8.启动从服务器复制功能。

start slave;

启动复制功能后,需要查看主从复制配置是否成功。

v2-077f8c6214b6133b9ce88309c45b07a5_720w.jpg

注:只有当Slave_IO_Running:Yes和Slave_SQL_Running:Yes,这两个都为Yes的时候,主从复制配置才成功。

#9.进行测试

①首先在主机上建立数据库并插入数据。

v2-665fd3357cc93c0c46386bd79cd94343_720w.jpgv2-f28ad22e77ddd2271ff6a8ee2b02a5e6_720w.jpg

②在从机中查看是否有相应数据库。

v2-b1fa5aaca4b06da8d0822418bbf800ec_720w.jpgv2-3d74d18d443b6aab86b50f8bc533aeb2_720w.jpg

通过从机上查看相应数据,可知主从复制配置成功。

#10.停止从服务复制功能。

stop slave;

 

4.总结

#1.主从复制的配置,大部分都在主机上,注意查看相关步骤。

#2.这里将主从机的防火墙都关闭是为了更好的演示,实际生产环境中一般不会出现windows主机和linux从机这种情况,因此不应该关闭防火墙,而是根据具体情况配置防火墙规则。

 

attachments-2020-03-bve1h1635e7969bff1c5b.jpg

您可能感兴趣的文档:

--结束END--

本文标题: MySQL进阶——主从复制

本文链接: https://www.lsjlt.com/news/5128.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL进阶——主从复制
      1.主从复制的基本原理 slave会从master读取binlog来进行数据同步。主要有以下三个步骤: ①master将改变记录到二进制日志(binary log),这些记录过程叫做二进制日志事件(binary log e...
    99+
    2019-05-12
    MySQL进阶——主从复制
  • MYSQL5.7进阶之主从复制
    主从复制是msql数据库的高可用 读写分离 容灾备份 等的基本要求 在这主从复制之前我们需要准备以下条件 保证master数据库和从数据库的mysql版本一致 matser和从数据防火墙关闭 数据库端口开启   好了,开搞 奥...
    99+
    2021-08-17
    MYSQL5.7进阶之主从复制
  • Docker进阶:mysql 主从复制、redis集群3主3从【扩缩容案例】
    Docker进阶:mysql 主从复制、redis集群3主3从【扩缩容案例】 一、Docker常规软件安装1.1 docker 安装 tomcat(默认最新版)1.2 docker 指定安装 ...
    99+
    2023-09-05
    运维 mysql 主从复制 redis集群3主3从 redis集群扩缩容案例 容器 云原生 虚拟化技术 mysql redis 原力计划
  • mysql主从复制
    一.主从复制简介 2015年5月28日11时,12小时后恢复,损失:平均每小时106.48W$ 1)高可用 2)辅助备份 3)分担负载 复制是 MySQL 的一项功能,允许服务器将更改从一个实例复制到另一个实例。 1)主服务器将所有数据和...
    99+
    2019-04-07
    mysql主从复制
  • 【MySQL】主从复制
    纸上得来终觉浅,绝知此事要躬行。 概述 复制是指将主数据库的DDL 和 DML 操作通过二进制日志传到从库服务器中,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库的数据保持同步。 MySQL支持一台主库同时向多...
    99+
    2015-07-01
    【MySQL】主从复制
  • mysql 主从复制
    1, 准备二台机器或者服务器 ,保持mysq 版本一样或者版本相差不大; 主机:114.215.198.39 从机:116.62.234.228 2    新建一个数据库 我的数据库是hlqzxm; 进入主机的mysql 配置文件中修改配置...
    99+
    2021-10-15
    mysql 主从复制 数据库入门 数据库基础教程 数据库 mysql
  • mysql主从复制
    两台mysql版本号为5.7以上   主库配置文件设置(注意设置在[mysqld]项中) 主库的ip地址为:192.168.1.1 server-id=1 #唯一id,主库设置1 log-bin=mysql-bin #日志记录...
    99+
    2018-10-04
    mysql主从复制 数据库入门 数据库基础教程 数据库 mysql
  • mysql主从复制--一主一从
    1、启动实例3306和33072、检查主库配置[root@client 3306]# egrep  "log-bin|server|sock"  my.cnfsocket &n...
    99+
    2022-10-18
  • centos8 mysql 主从复制
    ♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维课堂笔记,努力不一定有收获,但一定会有收获加油!一起努力,共赴美好人生! ♥️夕阳下,是最美的绽放,树高千尺,落叶归根人生不易,人间真情 目录 Linu...
    99+
    2023-08-31
    数据库 mysql 服务器
  • Mysql之主从复制
    文章目录 一.Mysql主从复制介绍 1.Mysql主从复制原理2.Mysql的复制类型3.Mysql主从复制的工作过程 二.搭建 Mysql主从复制1.首先关闭防火墙2.Mysql主从服...
    99+
    2023-09-04
    mysql java 数据库
  • mysql+ssl主从复制
    主从复制原理 作为主服务器Master, 会把自己的每一次改动都记录到 二进制日志 Binarylog 中。 (从服务器I/O thread会负责来读取master binary log, 然后写入自身r...
    99+
    2022-10-18
  • MySQL-5.5.33主从复制
    搭建主从同步需要在两个电脑上分别安装 MySQL ,我这里安装的是 CentOS6.7 64位,MySQL-5.5.33。MySQL 是二进制包安装的:http://aby028.blog.51cto.co...
    99+
    2022-10-18
  • Mysql/Mariadb主从复制
    概念 什么是·Mysql/Mariadb主从复制?     Mysql/Mariadb主从复制:当Master(主)数据库发生变化的时候,变化实时会同步到slave(从)数据库中; 类似于:Samba共享文件(C/S)、NFS网络文件...
    99+
    2021-03-22
    Mysql/Mariadb主从复制
  • Mysql 主从复制GTID
    --------------------------------------------安装准备配置/etc/my.cnf主master grant 分配复制帐号从slave ...
    99+
    2022-10-18
  • MySQL主从复制(二)
    主从架构中:从node是不接受w操作的,否则可能会导致数据不一致。一、复制架构中应该注意的问题: 1.限制slave为只读模式 可以设置在启动参数中。 > show global variable...
    99+
    2022-10-18
  • Mysql的主从复制
    Mysql的主从复制   Mysql的主从复制,我们一般用来保证数据间的同步关系,比如有分公司,我们就需要把数据同步给千里之外的分公司,这样就很方便快捷。这个实验我们还实现了ssl安全连...
    99+
    2022-10-18
  • 如何进行MySQL主从GTID复制修复
    如何进行MySQL主从GTID复制修复,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。GTID是5.6新增特性,减少DBA运维的工作。在以前一主...
    99+
    2022-10-19
  • MySQL 主从复制问题
    导致SQL线程故障原因分析及解决方案 原因 1. 版本差异,参数设定不同,比如:数据类型的差异,SQL_MODE影响 2. 要创建的数据库对象已经存在 3. 要删除或修改的对象不存在 4. DML语句不符合表定义及约束时. 原因是由...
    99+
    2021-08-11
    MySQL 主从复制问题
  • Mysql主从复制搭建
    1.mysql主库会把所有的写操作记录在binlog日志中,并且生成log dump线程,将binlog日志传给从库的I/O线程,从库生成两个线程,一个是I/O线程,另外一个是SQL线程。 主将更改操作记录到binlog里从将主的binlo...
    99+
    2020-09-28
    Mysql主从复制搭建
  • MySQL设置主从复制
    主从复制: 单向,双向,环形,级联,一主多从 双机复制的5种情形1、异步主从(默认常规)2、双写(前段程序对两个数据库同时写,必须两边都落实,程序才返回成功)3、利用外挂软件实现实时主库Binlog日志抓...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作