File tree Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Original file line number Diff line number Diff line change @@ -80,11 +80,11 @@ mysql> SELECT @@tx_isolation;
80
80
+ -- ---------------+
81
81
```
82
82
83
- 这里需要注意的是:与 SQL 标准不同的地方在于InnoDB 存储引擎在 ** REPEATABLE-READ(可重读)** 事务隔离级别下,允许应用使用 Next-Key Lock 锁算法来避免幻读的产生。这与其他数据库系统(如 SQL Server)是不同的。所以说虽然 InnoDB 存储引擎的默认支持的隔离级别是 ** REPEATABLE-READ(可重读)** ,但是可以通过应用加锁读(例如 ` select * from table for update ` 语句)来保证不会产生幻读,而这个加锁度使用到的机制就是 Next-Key Lock 锁算法。从而达到了 SQL 标准的 ** SERIALIZABLE(可串行化)** 隔离级别。
83
+ 这里需要注意的是:与 SQL 标准不同的地方在于InnoDB 存储引擎在 ** REPEATABLE-READ(可重读)** 事务隔离级别下,允许应用使用 Next-Key Lock 锁算法来避免幻读的产生。这与其他数据库系统(如 SQL Server)是不同的。所以说虽然 InnoDB 存储引擎的默认支持的隔离级别是 ** REPEATABLE-READ(可重读)** ,但是可以通过应用加锁读(例如 ` select * from table for update ` 语句)来保证不会产生幻读,而这个加锁度使用到的机制就是 Next-Key Lock 锁算法。从而达到了 SQL 标准的 ** SERIALIZABLE(可串行化)** 隔离级别。
84
84
85
- 因为隔离级别越低,事务请求的锁越少,所以大部分数据库系统的隔离级别都是** READ-COMMITTED(读取提交内容):** ,但是你要知道的是InnoDB 存储引擎默认使用 ** REPEATABLE-READ(可重读)** 并不会有任何性能损失。
85
+ 因为隔离级别越低,事务请求的锁越少,所以大部分数据库系统的隔离级别都是** READ-COMMITTED(读取提交内容):** ,但是你要知道的是InnoDB 存储引擎默认使用 ** REPEATABLE-READ(可重读)** 并不会有任何性能损失。
86
86
87
- InnoDB 存储引擎在 ** 分布式事务** 的情况下一般会用到** SERIALIZABLE(可串行化)** 隔离级别。
87
+ InnoDB 存储引擎在 ** 分布式事务** 的情况下一般会用到** SERIALIZABLE(可串行化)** 隔离级别。
88
88
89
89
### 实际情况演示
90
90
You can’t perform that action at this time.
0 commit comments