后端要学MySQL_后端程序员需要掌握MySQL数据库吗

本文详细介绍了后端程序员为何需要掌握MySQL数据库,特别是主从复制的原理,包括五个步骤:binlog记录、IO线程复制、Sql执行线程重放。还探讨了MySQL的逻辑架构,包括连接处理、SQL编译优化、存储引擎。进一步,文章深入到InnoDB存储引擎的逻辑存储结构,如表空间、段、区、页的详细组成。最后,讲解了InnoDB页结构、索引类型(聚集与非聚集)及锁机制。
摘要由CSDN通过智能技术生成

后端程序员必备:MySQL数据库相关流程图/原理图!

前言

整理了一些Mysql数据库相关流程图/原理图,做一下笔记,大家一起学习。

95d886e8e459933b6b2d2027f3cf1558.png

后端程序员需要掌握MySQL数据库吗

1.mysql主从复制原理图

mysql主从复制原理是大厂后端的高频面试题,了解mysql主从复制原理非常有必要。

主从复制原理,简言之,就三步曲,如下:

主数据库有个bin-log二进制文件,纪录了所有增删改Sql语句。(binlog线程)

从数据库把主数据库的bin-log文件的sql语句复制过来。(io线程)

从数据库的relay-log重做日志文件中再执行一次这些sql语句。(Sql执行线程)

如下图所示:

a834f0619c7dd158ae2146ec938ae31b.png

后端程序员需要掌握MySQL数据库吗

上图主从复制分了五个步骤进行:

步骤一:主库的更新事件(update、insert、delete)被写到binlog

步骤二:从库发起连接,连接到主库。

步骤三:此时主库创建一个binlog dump thread,把binlog的内容发送到从库。

步骤四:从库启动之后,创建一个I/O线程,读取主库传过来的binlog内容并写入到relay log

步骤五:还会创建一个SQL线程,从relay log里面读取内容,从Exec_Master_Log_Pos位置开始执行读取到的更新事件,将更新内容写入到slave的db

2.Mysql逻辑架构图

如果能在脑海中构建出MySql各组件之间如何协同工作的架构图,就会有助于深入理解MySql服务器

c9cf0e342fe1be0be6a85982d00aedbd.png

后端程序员需要掌握MySQL数据库吗

Mysql逻辑架构图主要分三层:

1) 第一层负责

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值