diff --git a/notes/MySQL_基础.md b/notes/MySQL_基础.md index c8bec82..08faec1 100644 --- a/notes/MySQL_基础.md +++ b/notes/MySQL_基础.md @@ -45,6 +45,7 @@ InnoDB 是 MySQL 5.5 之后默认的存储引擎,它是一种兼具高可靠
+ ### 1.2 MyISAM MyISAM 是 MySQL 5.5 之前默认的存储引擎。创建 MyISAM 表时会创建两个同名的文件: @@ -119,12 +120,15 @@ mysql> SELECT * FROM total; **平衡二叉树数据结构**:
+ **红黑树数据结构**:
+ **Btree 数据结构**:
+ **B+ Tree 数据结构**
@@ -284,21 +288,25 @@ InnoDB 存储引擎完全支持 ACID 模型: 一个事务的更新操作被另外一个事务的更新操作锁覆盖,从而导致数据不一致:
+ **2. 脏读** 在不同的事务下,一个事务读取到其他事务未提交的数据:
+ **3. 不可重复读** 在同一个事务的两次读取之间,由于其他事务对数据进行了修改,导致对同一条数据两次读到的结果不一致:
+ **4.幻读** 在同一个事务的两次读取之间,由于其他事务对数据进行了修改,导致第二次读取到第一次不存在数据,或第一次原本存在的数据,第二次却读取不到,就好像之前的读取是 “幻觉” 一样:
+ ### 4.4 隔离级别 想要解决以上问题,可以通过设置隔离级别来实现:InnoDB 支持以下四个等级的隔离级别,默认隔离级别为可重复读: