别再误解mysql的幻读了_innodb如何解决幻读

别再误解mysql的幻读了_innodb如何解决幻读默认隔离级别下 , mysql没有解决幻读问题 , 需要应用代码里加一个锁来解决 幻读问题是啥? 默认的隔离级别是可重复读 REPEATABLE-READ , 在这个模式下出现幻读的例子一般

[MySQL] 有没有解决幻读问题

默认隔离级别下 , mysql没有解决幻读问题 , 需要应用代码里加一个锁来解决

幻读问题是啥?

 

默认的隔离级别是可重复读 REPEATABLE-READ   ,  在这个模式下出现幻读的例子一般是这两种情况:

事务1和事务2同时 , 事务1读数据 , 事务2插入数据提交 , 事务1插入同样的数据时报错说已经重复了 , 我明明刚才查的时候没有 , 为啥报重复了? 

事务1和事务2同时 , 事务1读数据 , 事务2插入数据提交 , 事务1更新数据可以把事务2的数据也一块给更了 , 明明刚才没有怎么突然多出来数据了?

 

解决方式是在select读时候的sql中增加for update  , 会把我所查到的数据锁住 , 别的事务根本插不进去 , 这样就解决了,这里用到的是mysql的next-key locks

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/9278.html

(0)
上一篇 2023-02-11
下一篇 2023-02-11

相关推荐

  • MySQL查看和修改字符集的方法「终于解决」

    MySQL查看和修改字符集的方法「终于解决」参考链接:https://www.cnblogs.com/yangmingxianshen/p/7999428.html Django中,数据库的字符集最好为utf-8. 一、查看字符集 1.查看M…

    2023-04-07
    147
  • Python 在人工智能中的作用

    Python 在人工智能中的作用Python 是目前开发人员使用最广泛的编程语言之一。Guido Van Rossum 在 1991 年创建了它,从一开始,它就与 C++、Java 和其他语言一起成为最受欢迎的语言之一。

    2023-12-07
    103
  • mybatis面试热点

    mybatis面试热点什么是Mybatis? Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的…

    2023-01-28
    168
  • Redis-位图_redis 槽

    Redis-位图_redis 槽关于位图,可能大家不太熟悉, 那么位图能干啥呢?位图的内容其实就是普通的字符串,也就是byte数组,我们都知道 byte 8 位无符号整数 0 到 255 说个场景。比如你处理一些业务时候,往往会存在

    2023-01-25
    144
  • Python字符串转整数

    Python字符串转整数a href=”https://beian.miit.gov.cn/”苏ICP备号-1/a Copyright www.python100.com .Some Rights Reserved.

    2024-06-18
    47
  • 解决Pycharm闪退问题!

    解决Pycharm闪退问题!Pycharm是Python开发最为常用的IDE之一,但是在使用过程中,有时会遇到Pycharm闪退的问题,严重影响开发效率。本篇文章将从多个方面探讨解决Pycharm闪退问题的方法,帮助读者更好地使用Pycharm进行开发。

    2024-05-25
    74
  • C# ODP.NET 调用Oracle函数返回值时报错的一个解决方案[通俗易懂]

    C# ODP.NET 调用Oracle函数返回值时报错的一个解决方案[通俗易懂]有人在社区问到:C#调用Oracle中自定义函数的返回值时,无法正常调用。但在PL/SQL中正常调用返回。 于是动手一试: 1、准备函数(Oralce 11g.2.0.0.4) 正常调用返回: 2、C

    2022-12-25
    138
  • SQL Server使用脚本实现自动备份

    SQL Server使用脚本实现自动备份因服务器安装的SQL Server版本不支持自动定时备份,需自行实现,大概思路为: 创建备份数据库的脚本 创建批处理脚本执行步骤一中的脚本 创建Windows定时任务执行步骤二中的脚本 1. 创建SQ

    2023-04-10
    182

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注