大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说事务的隔离级别是什么_mysql事务隔离级别 默认,希望您对编程的造诣更进一步.
在讲事务的隔离级别,我们先得回忆一下事务的隔离性
事务的隔离性是在当多个用户并发访问数据库时,比如说操作同一张表时,数据库为每一个用户开启事务,不能被其他事务的操作所干扰,多个并发事务之间需要相互隔离。即要达到这样的一种效果:对于任意的两个并发事务T1和T2,在事务T1看来,T2要么在T1开始之前结束,要么就是在T1结束之后才开始,这样每个事务都感觉不到有其他的事务在并发的执行。
一共分为四个隔离级别:
读未提交(Read Uncommitted):最低的隔离级别,允许其他事务看到没有提交的数据,会导致脏读。
读已提交(Read Committed):被读取的数据可以被其他事务修改,这样可能导致不可重复读。也就是说,事务读取的时候获取读锁,但是在读完之后立刻释放(不需要等事务结束),而写锁则是事务提交后才释放,释放读锁之后,就可能被其他的事务修改数据。对于我们常用的数据库(Mysql,Sql Server,Oracle)的默认隔离等级就是该等级。
可重复读(Repeatable Read):也就是在开始读取数据时(事务开启时),不允许修改操作。
序列化(Serializable): 是最高的事务隔离级别,在该级别下,事务串行化顺序执行,可以避免脏读、不可重复读与幻读。但是这种事务隔离级别效率低下,比较耗数据库性能,一般不使用。
以上的隔离级别从上到下依次增强。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/6062.html