mysql事务隔离级别详情

 更新时间:2021年10月23日 11:31:59   作者:xdhchen  
这篇文章主要介绍了mysql事务隔离级别,文章围绕mysql事务隔离的相关资料详细展开文章重点,需要的小伙伴可以参考一下,希望对你有所帮助

serializable 串行化(无问题)

事务必须以顺序的方式执行,前一个事务提交之前后面的事务无法进行提交,最安全,但是不能并发操作,导致效率低下.

repeatab read 可重复读(默认隔离级别)(幻读)

在一个事务未提交之前,里面不论执行多少次查询,查询的结果都一样(即使这条记录被别的事务修改过)但是可能会出现幻读

read committed 读已提交(不可重复度,幻读)

在当前事务中别的事务提交的数据可以看到,那么可能会导致不可重复读(另一个线程提交数据后当前线程可以看到,然后就会导致前后两次同一条sql查询出来的结果不一样(对比可重复读)).

也可能出现幻读
 user1查询wangwu是没有的,然后user2开启事务并且插入wangwu但是不提交数据,user1再次查询还是没有的,执行插入wangwu操作,但是执行失败,明明wangw不存在但是无法插入,出现幻读.

read uncommitted 读未提交(幻读,不可重复读,脏读)

  • 脏读:当前事务会读到其他事务未提交的数据,万一其他事务集中回滚,那么当前事务读取的数据是不合法的,称为脏读.
  • 出现不可重复读:其他事务提交的修改会被当前事务感知到,从而查询出来的结果都是不一样的.
  • 出现幻读:首先user1查询wangwu不存在,user2开启事务并且插入wangwu但是不提交事务,此时user1查询到wangwu存在,执行

deletewangwu操作是失败的,明明查询到了wangwu但是无法删除?

到此这篇关于mysql事务隔离级别详情的文章就介绍到这了,更多相关mysql事务隔离级别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 分享MySql8.0.19 安装采坑记录

    分享MySql8.0.19 安装采坑记录

    这篇文章主要介绍了MySql8.0.19 安装采坑记录,内容虽然不长,但是都是朋友经常遇到的问题,小编特此分享到脚本之家平台,需要的朋友可以参考下
    2020-02-02
  • 如何解决mysql insert乱码的问题

    如何解决mysql insert乱码的问题

    在本篇内容里小编给大家整理的是一篇关于如何解决mysql insert乱码的问题的相关文章,有兴趣的朋友们可以学习参考下。
    2020-08-08
  • 详解MySQL中SlowLog的配置方法(图文)

    详解MySQL中SlowLog的配置方法(图文)

    mysql 日志系统上线有段时间了,前端在慢慢切站点过来写入,未雨绸缪 diy了套 mysql 监控工具
    2014-02-02
  • 聊聊MySQL中的存储引擎

    聊聊MySQL中的存储引擎

    MySQL是当前流行的数据库引擎之一,具有成本低、速度快、体积小且开放源代码的优点。这篇文章主要介绍了MySQL中存储引擎的相关知识,帮助大家更好的理解和学习数据库技术,感兴趣的朋友可以了解下
    2020-08-08
  • MySQL数据库开启、关闭、查看函数功能的方法

    MySQL数据库开启、关闭、查看函数功能的方法

    这篇文章主要介绍了MySQL数据库开启、关闭、查看函数功能的方法,本文为解决一个错误总结而来,错误信息本文一同给出,需要的朋友可以参考下
    2014-10-10
  • mysql 8.0.15 下载安装详细教程 新手必备!

    mysql 8.0.15 下载安装详细教程 新手必备!

    这篇文章主要为大家详细介绍了mysql 8.0.15 下载安装详细教程,纯新手教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-03-03
  • 解决Windows10下mysql5.5数据库命令行中文乱码问题

    解决Windows10下mysql5.5数据库命令行中文乱码问题

    重置系统后,很久之前安装的MySQL数据库出现了控制台查询中文乱码问题,时间太久早已经不记得怎么设置了。下面通过本文给大家分享Windows10下解决MySQL5.5数据库命令行中文乱码问题,一起看看吧
    2017-07-07
  • 安装使用Percona XtraBackup来备份恢复MySQL的教程

    安装使用Percona XtraBackup来备份恢复MySQL的教程

    这篇文章主要介绍了安装使用Percona XtraBackup来备份恢复MySQL的教程,文中的示例环境基于CentOS系统,需要的朋友可以参考下
    2015-12-12
  • mysql having用法解析

    mysql having用法解析

    having字句可以让我们筛选成组后的各种数据,where字句在聚合前先筛选记录,也就是说作用在group by和having字句前,下面通过实例给大家介绍mysql having用法,一起看看吧
    2017-10-10
  • Mysql中distinct与group by的去重方面的区别

    Mysql中distinct与group by的去重方面的区别

    distinct简单来说就是用来去重的,而group by的设计目的则是用来聚合统计的,两者在能够实现的功能上有些相同之处,但应该仔细区分,因为用错场景的话,效率相差可以倍计。
    2020-03-03

最新评论