MySQL
自由飛祥
初来乍到小菜鸟
展开
-
B+树 数据结构
MySQL 索引采用B+树的数据结构进行存储,如下图所示:真实的数据存在于叶子节点,即3、5、9、10、13、15、28、29、36、60、75、79、90、99.非叶子节点不存储真实数据,只存储指引搜索方向的数据项(指针),如17、35并不真实存在于数据表中。索引的数据结构一个磁盘相当于一个数据页,B+树的查找过程如下:比如要查找数据项29: 首先会把磁...原创 2019-08-16 16:34:50 · 4483 阅读 · 3 评论 -
简述一条SQL是如何执行的
在我们平时的开发之中,SQL 是避免不了的,随着工作年限的增加熟练度也是成正比的,但是一条SQL是怎么执行的却又可能还不怎么清楚。以MySQL为例大致可以分为七步:一、查询缓存当我们运行一条SQL语句的时候,首先会查询缓存中是否有数据(查询条件与上次完全一致),如果缓存中已经有了上次查询的数据就直接把缓存中的数据返回「8.0 取消了缓存机制」。如果不想让我们查询的数据存储到缓存的话,可...原创 2019-08-22 15:29:07 · 1253 阅读 · 0 评论 -
MySQL事务隔离级别
今天回顾一下MySQL的事务隔离级别,MySQL的事务隔离级别分为以下四种:read uncommitted : 读未提交,即脏读。一个事务可以读取到另一个事务修改并未提交的数据; read committed : 读已提交,可以解决脏读。一个事务修改并提交之后才能被另一个事务读取(不可重复读); repeatable read : 可重复读。在一个事务的两次查询中,被另一个事务修改了数据...原创 2019-09-05 15:40:27 · 618 阅读 · 1 评论