MySQL学习【第十二篇事务中的锁与隔离级别】

一.事务中的锁

1.啥是锁?

顾名思义,锁就是锁定的意思

2.锁的作用是什么?

在事务ACID的过程中,‘锁’和‘隔离级别’一起来实现‘I’隔离性的作用

3.锁的种类

共享锁:保证在多事务工作期间,数据查询不会被阻塞。

排他锁:保证在多事务工作期间,数据的一致性

上面两实现隔离性

乐观锁

悲观锁

4.多版本并发控制(MVCC)

只阻塞修改类操作,不阻塞查询类操作。乐观锁机制,谁先提交谁为准

5.锁的粒度

MyIsam:低并发锁(表级锁)
Innodb:高并发锁(行级锁)

6.事务的隔离级别

  a( READ UNCOMMITTED(独立提交)

  允许事务查看其他事务所进行的未提交更改

  b( READ COMMITTED(处理脏读 幻读)

  允许事务查看其他事务所进行的已提交更改

  c( REPEATABLE READ (处理重复读)

  确保每个事务的 SELECT 输出一致

  d( SERIALIZABLE

  将一个事务的结果与其他事务完全隔离

7.查看事务隔离级别

mysql> show variables like '%iso%';

8.修改隔离级别

[mysqld]
transaction_isolation=read-uncommit

猜你喜欢

转载自www.cnblogs.com/busiren/p/10600287.html
今日推荐