文章目录

  • 一、主从复制的概念
  • 二、主从复制的作用
  • 三、主从复制的类型
  • 四、主从复制原理
  • 五、线程的作用
  • 六、主从复制的两种方法
    • 1、MySQL基于日志点的复制
    • 2、MySQL基于GTID的复制
  • 七、MySQL复制类型
    • 1、异步复制
    • 2、全同步复制
    • 3、半同步复制

一、主从复制的概念

MySQL 主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。MySQL 默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,数据的更新可以在远程连接上进行,从节点可以复制主数据库中的所有数据库或者特定的数据库,或者特定的表。

二、主从复制的作用

  1. 数据的热备:作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据丢失。
  2. 架构的扩展:业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的频率,提高单个机器的I/O性能。
  3. 读写分离:使数据库能支撑更大的并发。
    – (1)在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力;(主库写,从库读,降压)
    – (2)在从服务器进行备份,避免备份期间影响主服务器服务;(确保数据安全)
  4. 高可用性:数据备份实际上是一种冗余的机制,通过这种冗余的方式可以换取数据库的高可用性,也就是当服务器出现故障或宕机的情况下,可以切换到从服务器上,保证服务的正常运行。

三、主从复制的类型

四、主从复制原理

原理:实现整个主从复制,需要由slave服务器上的IO进程Sql进程共同完成。

过程:

  1. 打开Master段的bin-log功能
  2. 在主库上把数据更改(DDL DML DCL)记录到二进制日志(Binary Log)中。
  3. 备库I/O线程将主库上的日志复制到自己的中继日志(Relay Log)中。
  4. 备库SQL线程读取中继日志中的事件,将其重放到备库数据库之上。

五、线程的作用

从节点:

I/O Thread:从 Master 节点请求二进制日志事件,并保存于中继日志中。
Sql Thread:从Relay log 中读取日志事件并在本地完成重放。

主节点:

Binlog Dump Thread:为每个 Slave 的 I/O Thread 启动一个 dump 线程,用于向从节点发送二进制事件。

六、主从复制的两种方法

1、MySQL基于日志点的复制

基于主库的bin-log将日志事件和事件位置复制到从库,从库再加以应用来达到主从同步的目的。

2、MySQL基于GTID的复制

是用来代替传统复制的方法,GTID复制与普通复制模式的最大不同就是不需要指定二进制文件名和位置,因此也就不依赖日志文件,同时又能更好的保证主从库数据一致性。

七、MySQL复制类型

1、异步复制

MySQL默认的复制,主库完成事务时立即将结果返回给客户端,并不关心从库是否接受并处理,因此此类型的响应速度快,但是数据的可靠性低

2、全同步复制

当主库执行完一个事务,并且所有从库也都执行完该事务时才给客户端返回结果,所以全同步复制的数据可靠性极高。

3、半同步复制

MySQL5.5以后才开始支持的半同步复制,介于上两者之间。主库在执行完一个事务后,等待至少一个从库收到并写入到中继日志中才返回给客户端,所以相对于全同步来说缩短了响应时间。
因为这个延迟的时间至少是一个TCP/IP的往返时间,所以最好在低延迟的网络中使用。

MySQL主从复制简介相关推荐

  1. mysql 主从复制介绍_MySQL 主从复制介绍

    一.MySQL 主从复制简介 (1) MySQL 主从复制通过逻辑的 binlog 日志复制到要同步的服务器本地,然后由本地的线程读取日志里面的 SQL 语句,重新应用到 MySQL 数据库中 (2) ...

  2. mysql主从配置duxi_配置MySQL主从复制(一主一从)

    配置mysql主从复制(一主一从) MySQL版本:5.7,Linux版本:CentOS 7.4 MySQL主从复制简介 MySQL主从复制的目的是实现数据库冗余备份,将master数据库的数据定时同 ...

  3. mysql: 安装 / 主从复制简介 / 异步复制

    ######1.安装mysql###### ###1.获得安装包,解压### ###2.安装### ###3.查看数据库初始密码,安全初始化### grep password   /var/log/m ...

  4. mysql主从复制的配置方法和原理简介

    1.介绍 MySQL主从复制是一个异步的复制过程,底层是基于Mysql数据库自带的二进制日志功能.就是一台或多台MysQL数据库(slave,即从库)从另一台MNySQL数据库(master,即主库) ...

  5. mysql 主从复制讲解_MySQL主从复制详解

    前言: 在MySQL中,主从架构应该是最基础.最常用的一种架构了.后续的读写分离.多活高可用架构等大多都依赖于主从复制.主从复制也是我们学习MySQL过程中必不可少的一部分,关于主从复制的文章有很多, ...

  6. 看完这篇还不懂 MySQL 主从复制,可以回家躺平了~

    我们在平时工作中,使用最多的数据库就是 MySQL 了,随着业务的增加,如果单单靠一台服务器的话,负载过重,就容易造成宕机. 这样我们保存在 MySQL 数据库的数据就会丢失,那么该怎么解决呢? 其实 ...

  7. MySQL主从复制原理(原理+实操)

    1.MySQL主从复制原理(原理+实操) 主从复制简介 在实际的生产中,为了解决Mysql的单点故障已经提高MySQL的整体服务性能,一般都会采用「主从复制」. 比如:在复杂的业务系统中,有一句sql ...

  8. 企业级运维——Mysql主从复制(异步、半同步、全同步)

    文章目录 主从复制原理 1.主节点 binary log dump 线程 2.从节点I/O线程 3.从节点SQL线程 主从复制过程 异步模式(mysql async-mode) 半同步模式(mysql ...

  9. mysql主从复制-介绍

    1 简介     Mysql Replication(MySQL主从复制)是MySQL数据库使用率非常高的一种技术,它使用某个数据库服务器为主,然后在其他数据库服务器上进行复制,后面复制的数据库也称从 ...

最新文章

  1. Linux下显示硬盘空间的两个命令
  2. Spring MVC工作原理 及注解说明
  3. eclipse java 生成api_怎样使用Eclipse在Java中实现自己的API
  4. vue整合ueditor
  5. python手工打码_python云打码
  6. list to torch
  7. AMD天下!10款超性价比S754闪龙主板
  8. 为什么支付宝跨行转账可以不收费?支付宝为什么要做这个业务?盈利模式是什么?
  9. 100题前端面试[题目+答案] -- 自用
  10. 电竞英雄联盟数据API接口 - 【比赛列表】API调用示例代码
  11. 算法系列——组合总数(Combination Sum)
  12. android annotations
  13. 《环球企业家》:国产手机操纵者联发科的秘密
  14. 软件流程和管理(八):质量管理
  15. 浅谈ThinkPH5.0和5.1的反序列化利用链分析
  16. deflate及gzip格式说明
  17. 内行才知道的大数据分析平台
  18. Panoptic SegFormer:全景分割第一名!南大港大英伟达提出新算法,霸榜全景分割...
  19. 简历投递误区你中招没?
  20. PAT1013. Battle Over Cities (25)

热门文章

  1. 关于Android 中的Activity,Application和Task
  2. android开发板!Android开发你需要了解的那些事,大牛最佳总结
  3. T2噬菌体MVC案例教程
  4. 微软nni_GitHub项目推荐 | NNI:微软发布的开源神经架构搜索or超参调优AutoML工具包...
  5. 服务下线-我的命运我做主
  6. Docker的网络模式及数据管理
  7. MQTT协议学习:3、MQTT客户端实例
  8. 天津春考计算机重点知识,春季高考试题-天津春季高考试题.doc
  9. LinuxProbe 0x01 环境安装、系统安装、linux命令
  10. 4、TC29x BootROM 内容