mysql innodb下的锁及隔离级别

CosEmon 2020-05-10

innodb引擎支持行级锁。

锁实现了事务之间的隔离功能。

悲观锁,排他锁种类:

1. row-level lock 或record lock    都是指的行级锁

2. gap                 间隙锁

3. next-lock              下键锁

隔离级别(隔离的是数据的读,默认的级别是RR模式):也称读的隔离性级别

查看数据库当前隔离级别:select @@tx_isolation;

1. RU  读未递交,可脏读

2. RC  读已递交,可幻读,隔离了脏读

3. RR  可重复读,隔离了幻读。利用的是undo的快照技术+GAP间隙锁+nextlock下键锁

4. SE  串行化,可以防止死锁,但并发事务性能差

配置文件中设置隔离级别:vim /xx/my.cnf中添加

1. transaction_isolation=read-uncommitted

2. transaction_isolation=read-committed

3. transaction_isolation=repeatable-read

相关推荐