加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

后端措施员必备:MySQL数据库相干流程图/道理图

发布时间:2019-08-10 07:17:53 所属栏目:编程 来源:Java知音TM
导读:媒介 清算了一些Mysql数据库相干流程图/道理图,做一下条记,各人一路进修。 1.mysql主从复制道理图 mysql主从复制道理是大厂后端的高频口试题,相识mysql主从复制道理很是有须要。 主从复制道理,简言之,就三步曲,如下: 主数据库有个bin-log二进制文件

一张表中可以有成千上万笔记录,一个页只有16KB,以是也许必要许多几何页来存放数据。差异页着实组成了一条双向链表,File Header是InnoDB页的第一部门,它的FIL_PAGE_PREV和FIL_PAGE_NEXT就别离代表本页的上一个和下一个页的页号,即链表的上一个以及下一个节点指针。

MySQL后端措施员必备:mysql数据库相干流程图/道理图

5.Innodb索引布局图

我们先看一份数据表样本,假设Col1是主键,如下:

MySQL后端措施员必备:mysql数据库相干流程图/道理图

B+树聚积索引布局图

MySQL后端措施员必备:mysql数据库相干流程图/道理图
  • 聚积索引就是以主键建设的索引
  • 聚积索引在叶子节点存储的是表中的数据

非聚积索引布局图

假设索引列为Col3,索引布局图如下:

MySQL后端措施员必备:mysql数据库相干流程图/道理图
  • 非聚积索引就是以非主键建设的索引
  • 非聚积索引在叶子节点存储的是主键和索引列
  • 行使非聚积索引查询出数据时,拿到叶子上的主键再去查到想要查找的数据。(拿到主键再查找这个进程叫做回表)
  • 假设所查询的列,恰恰都是索引对应的列,不消再回表查,那么这个索引列,就叫包围索引。

InnoDB 锁范例思想导图

MySQL后端措施员必备:mysql数据库相干流程图/道理图

加锁机制

乐观锁与气馁锁是两种并发节制的头脑,可用于办理丢失更新题目。

乐观锁

  • 每次去取数据,都很乐观,认为不会呈现并发题目。
  • 因此,会见、处理赏罚数据每次都不上锁。
  • 可是在更新的时辰,再按照版本号或时刻戳判定是否有斗嘴,有则处理赏罚,无则提交事宜。

气馁锁

  • 每次去取数据,很气馁,都认为会被别人修改,会有并发题目。
  • 因此,会见、处理赏罚数据前就加排他锁。
  • 在整个数据处理赏罚进程中锁定命据,事宜提交或回滚后才开释锁.

锁粒度

  • 表锁: 开销小,加锁快;锁定力度大,产生锁斗嘴概率高,并发度最低;不会呈现死锁。
  • 行锁: 开销大,加锁慢;会呈现死锁;锁定粒度小,产生锁斗嘴的概率低,并发度高。
  • 页锁: 开销和加锁速率介于表锁和行锁之间;会呈现死锁;锁定粒度介于表锁和行锁之间,并发度一样平常

兼容性

共享锁:

  • 又称读锁(S锁)。
  • 一个事宜获取了共享锁,其他事宜可以获取共享锁,不能获取排他锁,其他事宜可以举办读操纵,不能举办写操纵。
  • SELECT ... LOCK IN SHARE MODE 表现加共享锁。

排他锁:

  • 又称写锁(X锁)。
  • 假如事宜T对数据A加上排他锁后,则其他事宜不能再对A加任任何范例的封闭。获准排他锁的事宜既能读数据,又能修改数据。
  • SELECT ... FOR UPDATE 表现添加排他锁。

锁模式

  • 记录锁: 在行响应的索引记录上的锁,锁定一个行记录
  • gap锁: 是在索引记录间歇上的锁,锁定一个区间
  • next-key锁: 是记录锁和在此索引记录之前的gap上的锁的团结,锁定行记录+区间。
  • 意向锁 是为了支持多种粒度锁同时存在;

【编辑保举】

  1. 测试数据库的不变性和机能竟云云简朴
  2. 微软公布SQL Server 2019免费支持Java
  3. 超具体的数据库主机及数据库日记网络总结
  4. 记一个 MySQL计划不公道处所:应用措施错误暗码不绝重连校验机制QL
  5. 值得保举的四款优越图形数据库
【责任编辑:华轩 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读