IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 【数据库】mysql主从同步原理 -> 正文阅读

[大数据]【数据库】mysql主从同步原理

目录

概念

好处

流程

????????主节点 binary log dump 线程

? ? ? ? 从节点IO线程

? ? ? ? 从节点SQL线程

注意

主从同步模式

异步复制

全同步复制

半同步复制


概念

MySQL主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点

建立一个和主数据库(参照物)完全一样的数据库环境,称为从数据库;主数据库一般是准实时的业务数据库。

好处

????????1.可以对数据进行热备份,作为后辈数据库,祝数据库服务器故障后,可以切换到从数据库继续工作,避免数据库宕机的损失

? ? ? ? 2.随着业务量增大,IO频率过高,单机无法满足,促使多库存储,降低磁盘IO的访问频率,提高IO性能

? ? ? ? 3.读写分离,在开发工作中,有时候会遇见某个sql 语句需要锁表,导致暂时不能使用读的服务,这样就会影响现有业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出现了锁表的情景,通过读从库也可以保证业务的正常运作。

流程

MySQL主从复制建立在三个线程之上,分别为

????????主节点 binary log dump 线程

????????????????负责将主数据库更新后的binlog日志内容发送到从数据库,在读取操作的时候,线程会对binlog上锁,当读取完成后,锁会被释放

? ? ? ? 从节点IO线程

? ? ? ? ? ? ? ? 接收主节点 binary log dump 线程发送的binlog日志内容,将其写入到relay log(中继日志)中

? ? ? ? 从节点SQL线程

? ? ? ? ? ? ? ? 负责读取relay log中的内容,解析成具体的操作并执行,最终保证主从数据的一致性

注意

? ? ? ? 主节点使用binlog问价+position偏移量来定位主从同步的位置,从节点会保存其已接收到的偏移量,下次会从偏移量的位置进行同步,相当于每次都是增量同步,不是全量同步

主从同步模式

异步复制

? ? ? ? MySQL的默认方式,主库把日志发送给从库后不管从库是否已经接收并处理,这样的效率比较高,但是一旦主库宕机,从库处理失败,这时候从库转换为主库,就会产生日志丢失,导致数据丢失

全同步复制

? ? ? ? 主库写入binlog后强行同步到从库,所有从库都执行完后才会返回给客户端,这种方式稳定性高,但是性能会收到严重影响

半同步复制

? ? ? ? 和全同步不同的是,从库写入日志成功后返回ACK确认给主库,主库收到至少一个从库的确认就会认为写操作完成

参考文章

Mysql主从复制概念_wzj_110的博客-CSDN博客

MySQL主从、主主、半同步节点架构的的原理及实验总结 - 记忆流年 - 博客园

膜拜!华为大牛透彻讲解Java面试100道必考题,不管你工作几年,都得看看!现在免费分享给大家!_哔哩哔哩_bilibili

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-01-29 23:09:15  更:2022-01-29 23:11:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 14:38:28-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码