MySQL之:事务

2020-03-30  本文已影响0人  Simon_Ye

并发控制

锁粒度:

锁:

实现:

分类:

锁策略:

在锁粒度及数据安全性寻求的平衡机制

显示使用锁:

死锁:

两个或多个事务在同一资源相互占用,并请求锁定对方占用的资源的状态


事务

事务Transactions:

一组原子性的SQL语句,或一个独立工作单元

事务日志:

记录事务信息,实现undo,redo等故障恢复功能

ACID特性:

启动事务:

START TRANSACTION

结束事务:

  1. COMMIT:提交
  2. ROLLBACK:回滚

注意:只有事务型存储引擎方能支持此类操作
建议:显式请求和提交事务,而不要使用“自动提交”功能
set autocommit={1|0}

事务支持保存点:savepoint

SAVEPOINT identifier
ROLLBACK [WORK] TO [SAVEPOINT] identifier
RELEASE SAVEPOINT identifier

事务隔离级别:从上至下更加严格

事务隔离级别 脏读可能性 不可重复读可能性 幻读可能性 加锁读
读未提交(read-uncommitted)
不可重复读(read-committed)
可重复读(repeatable-read)
串行化(serializable)

MVCC:多版本并发控制,和事务级别相关

指定事务隔离级别:

上一篇 下一篇

猜你喜欢

热点阅读