mysql简记(二)

1.数据库的隔离级别

  (1)脏读 (Dirty Reads) : 

        脏读是指在一个事务处理过程里读取了另一个未提交的事务中的数据。

          这个在多线程操作数据库的时候是很可怕的,应该避免

    (2) 不可重复读 ( Non-repeatable Reads ):

         不可重复读是指在对于数据库中的某个数据,一个事务范围内多次查询却返回了不同的数据值,这是由于在查询间隔,被另一个事务修改并提交了。

        

      (3) 虚读(幻读)

           幻读和不可重复读都是读取了另一条已经提交的事务(这点就脏读不同),所不同的是不可重复读查询的都是同一个数据项,而幻读针对的是一批数据整体(比如数据的个数)。

2.mySql数据库提供了四种隔离级别

      (1)Serializable (串行化):可避免脏读、不可重复读、幻读的发生。

    (2)Repeatable read (可重复读):可避免脏读、不可重复读的发生。

    (3)Read committed (读已提交):可避免脏读的发生。

    (4)Read uncommitted (读未提交):最低级别,任何情况都无法保证。

    隔离级别从高到低,隔离级别越高,相对效率越低

    mysql默认的使用的为Repeatable read (可重复读)  不可避免幻读

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容