事务的四大特性&隔离性引发的安全性问题

原子性:事务不可分割

一致性:事务执行前后数据完整性保持一致

隔离性:一个事务的执行不应该受到其他事务的干扰

持久性:一旦事务结束,数据就持久到数据库

如果不考虑隔离性引发安全性问题

  1. 读问题
  • 脏读:读到另一个事务未提交额数据
  • 不可重复读:一个事务读取到另一个事务已经提交的update的数据,导致一个事务多次查询不一致问题
  • 虚读、幻读:一个事务读取到另一个事务已经提交的insert的数据,导致一个事务多次查询不一致问题
  1. 写问题      
  • 丢失更新

设置隔离级别

read uccommitted:未提交读,任何问题都解决不了 四种读问题全会发生

read committed:已提交读,解决脏读;但是解决不了不可重复读和虚读

repeatable read:重复读,可以解决脏读和重复读;

Serializable:序列号,解决所有读的问题,效率低;

猜你喜欢

转载自blog.csdn.net/qq_41679695/article/details/84135721
今日推荐