(编辑:jimmy 日期: 2024/12/26 浏览:2)
网上对于此类的文章已经十分饱和了,那还写的原因很简单——作为自己的理解笔记。
前言
"_blank" href="https://www.jb51.net/books/112116.html">高性能MySQL》第三版中其对事务的描述是这样的:
事务就是一组原子性的SQL查询,或者说一个独立的工作单元。如果数据库引擎能够成功地对数据库应用该组查询的全部语句,那么就执行该组查询。如果其中有任何一条语句因为崩溃或其他原因无法执行,那么所有的语句都不会执行。
上图演示的是事务读时,其他事务不可写,下图是写时不可操作。
3 三个问题—脏读、不可重复读、幻读。
这是采取事务的不同隔离级别可能产生的几个问题,在上面隔离级别已经提及到了,但是为了避免混淆还是单独拿出来。
再啰嗦一些不可重复读和幻读的区别:可以理解为不可重复读是那条记录的字段值改变了,例如id为1的记录中name的两次值都不同;而幻读则是数量上的不同,例如我查询的时候共有2条记录,但是执行修改操作的时候却更新了3条。
以上就是聊聊MySQL事务的特性和隔离级别的详细内容,更多关于MySQL 事务特性和隔离级别的资料请关注其它相关文章!