摘要:
首先MVCC不是MySQL才有的概念,它是一种思想,一种方法论。 MVCC全称:Multi-Version Concurrency Control 多版本并发控制 最早于1978年,论文『Naming and Synchronization in a Decentralized Computer S 阅读全文
随笔分类 - MySQL
MySQL-(InnoDB)事务和锁
2022-12-30 12:08 by 杭伟, 66 阅读, 收藏,
摘要:
在事务并行处理背景下,不同的事务之间因数据共享的状态变化,存在着某种依赖/隔离影响。即事务隔离级别。 事务隔离级别,官网的解释在这里。 InnoDB提供 SQL:1992 标准描述的所有四种事务隔离级别: READ UNCOMMITTED、 READ COMMITTED、 REPEATABLE RE 阅读全文
MySQL-存储引擎架构
2022-12-29 09:52 by 杭伟, 350 阅读, 收藏,
摘要:
MySQL是一种分层体系结构的关系数据库。 一共有三层:客户(连接)层,Server层,存储引擎层。 简单理解就是这三层架构。官网的解释在这里。(这个部分建议看8.0的文档,8.0文档补充了架构图,5.7没有放图) 如上图所示(请记住各层的上下顺序,比如索引下推概念中的下推pushdown指的就是s 阅读全文
MySQL-索引优化
2022-12-23 11:38 by 杭伟, 55 阅读, 收藏,
摘要:
回顾聚簇索引,官网的定义在这里。 聚簇索引无法显示创建,存储引擎会根据一定的规则自动创建,具体规则优先级是: 主键--》非空唯一索引--》隐藏列rowid **InnoDB表的主键列应该选择有序的顺序ID。 慢SQL查找(慢查询日志) 查看是否开启,默认不开启。如果不需要进行调优,一般不建议开启。参 阅读全文
MySQL-带你上官网看索引
2022-12-22 11:54 by 杭伟, 206 阅读, 收藏,
摘要:
在我之前的一篇文章中,有引用一个讨论用Hash还是Tree的问题,DB中关于查找类数据结构,除了树,还有Hash(HashMap,HashSet)。 存储数据结构之争 B+树主要是照顾磁盘IO这种特殊的性质应运而生的;然而在内存够多够大时,Hash某些时候比Tree结构有用得多。 但是Hash做索引 阅读全文
MySQL-执行计划
2022-12-21 11:20 by 杭伟, 265 阅读, 收藏,
摘要:
上官网看执行计划文档释义,移步 此部分在MySQL官方文档中的结构属于优化(Optimization)-理解查询执行计划(Understanding the Query Execution Plan)。 此部分一共包括5个部分内容: 1,使用explain优化查询 2,explain输出内容释义 3 阅读全文
MySQL-InnoDB磁盘结构
2022-12-20 12:10 by 杭伟, 216 阅读, 收藏,
摘要:
主要阐述InnoDB存储引擎(MySQL5以后的默认引擎)。 数据库中最基本的组成结构是数据表,视觉上的表和其对应的磁盘结构如下: 此图参考了厦门大学课堂:MySQL原理 。但是视频中一些更多细节没有涉及,比如Leaf node segment和Non-leaf node segment其实就是叶子 阅读全文
浙公网安备 33010602011771号