MySql
文章平均质量分 74
数据库
QuietThinking
Whoever makes you miserable will make you strong
展开
-
B树和B+树的区别
B树和B+树的区别转载 2022-08-15 21:44:31 · 2604 阅读 · 1 评论 -
MVCC之ReadView
MVCC (Multi-Version Concurrency Control) ,即多版本并发控制,利用记录的版本链和ReadView,来控制并发事务访问相同记录时的行为。ReadView即一致性视图,用来判断版本链中的哪个版本是当前事务可见的。...转载 2022-08-02 21:37:40 · 2997 阅读 · 0 评论 -
数据库垂直拆分
一、缘起当数据库的数据量非常大时,水平切分和垂直拆分是两种常见的降低数据库大小,提升性能的方法。假设有用户表:user(uid bigint,name varchar(16),pass varchar(16),age int,sex tinyint,flag tinyint,sign varchar(64),intro varchar(256)…);水平切分是指,以某个字段为依据(例如uid),按照一定规则(例如取模),将一个库(表)上的数据拆分到多个库(表)转载 2020-09-14 13:36:46 · 464 阅读 · 0 评论 -
SQL执行顺序(以MySQL为准)
书写顺序: select->distinct->from->join->on->where->group by->having->order by->limit 必须字段:select、from 可选字段:distinct、join、on、where、group by、having、sum、count、max、avg、order by、limit执行顺序 from->on->join->where->g转载 2021-05-19 20:48:10 · 161 阅读 · 0 评论 -
InnoDb存储引擎执行流程
缓冲池 buffer pool会把一些磁盘上的数据加载到该内存当中 查询数据的时候不从磁盘查,从该内存里查undo log逻辑日志,可以认为当delete一条记录时,undo log中会记录一条对应的insert记录,反之亦然,当update一条记录时,它记录一条对应相反的update记录 用于数据回滚 实现mvccredo log存储引擎层日志 物理日志(类似于“对哪个数据页中的什么记录,做了个什么修改”) 记录对数据做了什么修改,防止已提交事务的数据丢失。因为数据不是实时刷盘的原创 2021-05-18 22:09:56 · 284 阅读 · 0 评论