My SQL事务
2022-12-14 10:37 一树一菩提 阅读(22) 评论(0) 收藏 举报事务-ACID:
Atomicity(原子性) : 要么都成功,要么都失败
Consistency(一致性) :最终一致性,保持数据库的完整性
Isolation(隔离性):多用户操作,事务间互不影响
Durability(持久性):分2种:
· 事务没有提交,数据恢复到原状
· 事务已经提交,持久到数据库了
事务隔离分为不同级别:
| 隔离级别 | 描述 |
|---|---|
| 串行化(Serializable) | 可以解决脏读,不可重复读及幻读问题 |
| 可重复读(repeatable read) | 可以解决脏读,不可重复读问题 |
| 读提交(read committed) | 可以解决脏读问题 |
| 读未提交(Read uncommitted) | 最低级别,以上情况都无法解决 |
脏读:一个事务读取到了另一个事务未提交的数据
不可重复读:在一个事务内,每次读取到的数据结果不一致
虚读(幻读):在一个事务内,读取到了别的事务插入的数据,导致读取数据前后数量不一致(多一行数据)
数据库隔离级别设置:
select @@tx_isolation; 查询当前事务隔离级别
set transaction isolation level; 设置事务隔离级别
start transaction; 开启事务
commit;提交事务,同时事务结束
rollback;回滚事务,同时事务结束
参考:
浙公网安备 33010602011771号