mysql置事务隔离级

在这里插入图片描述

隔离级别脏读(Dirty Read)不可重复读(Non-Repeatable Read)幻读(Phantom Read)
读未提交
读已提交
可重复读
序列化

这个表格以可读性的方式总结了四种隔离级别下可能发生的并发问题。
以下是对脏读(Dirty Read)、不可重复读(Non-Repeatable Read)和幻读(Phantom Read)的解释及其如何发生的描述:

  1. 脏读(Dirty Read)

    • 定义:脏读是指一个事务在读取了另一个事务未提交的数据后,后者发生了回滚,那么读取到的数据是无效的,称之为脏读。
    • 发生方式:当一个事务修改了某些数据,但尚未提交时,另一个事务读取了这些未提交的数据,然后第一个事务回滚,导致第二个事务读取到的数据实际上是无效的或不一致的。
  2. 不可重复读(Non-Repeatable Read)

    • 定义:不可重复读是指在一个事务内的两次查询之间,另一个事务修改了数据并提交,导致两次查询返回的结果不一致,即第二次读取到的数据与第一次读取到的数据不一样。
    • 发生方式:当一个事务在读取数据后,另一个事务修改了这些数据并提交,然后第一个事务再次读取同样的数据,结果与之前不一致,因为数据已经被修改。
  3. 幻读(Phantom Read)

    • 定义:幻读是指一个事务在读取了一系列的数据后,另一个事务插入了一些新的数据,导致第一个事务在后续读取相同的数据时,发现有额外的数据出现,就像出现了幻觉一样。
    • 发生方式:当一个事务在读取某些数据后,另一个事务插入了新的符合查询条件的数据,并提交,然后第一个事务再次读取相同的数据,结果发现有新的数据出现,就好像出现了幻觉一样。

这些并发问题通常是由于多个事务同时对数据库进行操作,而没有足够的隔离度保证,导致了数据的不一致性和可见性问题。不同的事务隔离级别可以解决或减轻这些问题的发生。

如何避免?

资源加锁,如redis分布式锁

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/481156.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】——栈与队列(附加oj题详解)深度理解

栈 1.栈的定义 栈:栈是仅限与在表尾进行插入或者删除的线性表 我们把允许一端插入和删除的一端叫做栈顶,另一端叫栈底,不含任何元素的栈叫做空栈,栈又叫做后进先出的线性表,简称LIFO结构 2.栈的理解 对于定义里面…

Medium 级别反射型 XSS 攻击演示(附链接)

环境准备 如何搭建 DVWA 靶场保姆级教程(附链接)https://eclecticism.blog.csdn.net/article/details/135834194?spm1001.2014.3001.5502 测试 打开靶场找到该漏洞页面 先右键检查输入框属性 跟 Low 级别是一样的,所以咱们直接输入带 HTM…

不要看这些影视作品

这些电影/电视剧很不好看,虽然它评分很高,但是很容易误导人。我帮大家挑出来,以免浪费大家时间。 1. 假如我是真的 导演:王童 主演:谭咏麟、胡冠珍 不推荐理由:情节夸张,毒害青少年 2. 桃源…

JDBC综合练习

文章目录 1.需求2.环境搭建3.查询所有数据4.添加5.修改6.删除 1.需求 完成商品品牌数据的增删改查操作。 • 查询:查询所有数据 • 添加:添加品牌 • 修改:根据 id修改 • 删除:根据 id删除 2.环境搭建 •准备环境&#xf…

CISP 4.2备考之《物理与网络通信安全》知识点总结

文章目录 第 1 节 物理与环境安全第 2 节 网络安全基础第 3 节 网络安全技术与设备第 1 部分 防火墙第 2 部分 入侵检测系统第 3 部分 其他安全产品 第 4 节 网络安全设计规划 第 1 节 物理与环境安全 1.场地选择 1.1 场地选择:自然条件、社会条件、其他条件。1.2 抗震和承重&…

Set系列集合:Hashset、LinkedHashset、TreeSet --java学习笔记

Set系列集合 Set系列集合特点:无序、不重复、无索引添加数据的顺序和获取出的数据顺序不一致;Hashset:无序、不重复、无索引LinkedHashset:有序、不重复、无索引TreeSet:排序、不重复、无索引 代码演示: import java.util.*;public class ListTest5 {public stati…

c语言食堂就餐排队问题290行

定制魏:QTWZPW,获取更多源码等 目录 题目 数据结构 函数设计 结构设计 总结 效果截图 ​ 主函数代码 题目 设计一个程序来模拟食堂就餐排队问题,通过输入学生人数和面包数量,计算有多少学生能够吃到午餐。 数据结构 该…

【链表】Leetcode 2. 两数相加【中等】

两数相加 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的, 并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不…

Python核心编程 --- 高级数据类型

Python核心编程 — 高级数据类型 字符串 列表 元组 字典 1.序列 序列:一组按顺序排列的数据集合。 在Python中存在三种内置的序列类型:字符串、列表、元组 优点:可支持索引和切片操作 特点:第一个正索引为0,指…

web学习笔记(四十三)ajax

目录 1.相关基础概念 1.1客户端与服务器 1.2URL地址 1.3 客户端和服务器端通信的过程 1.4 一个URL地址放入浏览器,到页面渲染发生了什么事情 1.5 数据 1.6资源的请求方式 2.Ajax 2.1什么是Ajax 2.2 jQuery 中的Ajax 2.2.1 $.get()的语法 2.2.2$.post()…

Spring Cloud Alibaba Sentinel 使用详解

一、Sentinel 介绍 随着微服务的流行,服务和服务之间的稳定性变得越来越重要。 Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 Sentinel 具有以下特征: 丰富的应用场景: Sentinel 承接了阿里巴…

Linux-Arm环境下配置编译qt-everywhere及交叉编译环境

前言 最近在搞交叉编译的事,手上拿了个同事的香橙派玩交叉编译,现在来到了第一步,就是先在arm上配置qt的开发环境。当然了Qt没有直接提供qt on arm,而是需要自行在arm环境下编译一个qt环境出来,所以这里需要使用到qt提…

集简云新增“文本语音转换”功能,实现智能语音交互

为丰富人工智能领域的应用集成,为用户提供更便捷和智能化的信息获取和视觉创作方式,本周集简云上线了内置应用—文本语音转换。目前支持OpenAI TTS和TTS HD模型,实现文本语音高效智能转换,也可根据你的产品或品牌创建独特的神经网…

lvgl 窗口 windows lv_port_win_visual_studio 版本 已解决

不知道的东西,不知道lvgl窗口。一切从未知开始 lv_port_win_visual_studio 主分支 对应的分支 v7版本更新git submodule update --init --recursive同步 lvgl代码随后打开 visualSudio 打开.sln 文件 编译 release模式 允许 一切正常代码部分

Windows Insiders WSLg Linux GUI App 支持尝鲜

2021 年 4 月 21 日,微软在 Developer Blogs 发布了 Windows 预览版 WSL(Windows Linux 子系统) 对 Linux GUI App 的支持的公告🔗,碰巧😀我最近重装了波电脑,系统换成了 Windows Insiders&…

【数据结构刷题专题】——二分查找

二分查找 二分查找模板题&#xff1a;704. 二分查找 二分查找前提&#xff1a; 有序数组数组中无重复元素 左闭右闭&#xff1a; class Solution { public:int search(vector<int>& nums, int target) {int left 0;int right nums.size() - 1;while (left <…

​CC-EasyCommonInput: 基于uni-app原生input组件封装的增强实用输入框组件

CC-EasyCommonInput&#xff1a;基于uni-app原生input组件封装的增强实用输入框组件 摘要&#xff1a; 在前端开发中&#xff0c;输入框&#xff08;Input&#xff09;是一个常见的UI组件&#xff0c;用于获取用户输入的数据。然而&#xff0c;为了满足不同的业务需求和用户体验…

LED显示屏视频播放器的8大功能

随着中国LED显示屏企业的规模发展和产品技术的不断创新&#xff0c;LED显示屏在各个领域中的应用得到了广泛推广。然而&#xff0c;LED显示屏的出色表现离不开LED视频播放器这一关键设备的支持。下面将介绍LED视频播放器的8大功能&#xff0c;以及它们如何提升LED显示屏的显像效…

VSCode最强插件合集,助你代码开发效率翻倍!

大家好&#xff0c;我是宝哥。 今天给大家推荐14个VSCode靠前的编程辅助插件&#xff0c;它们可以帮助你提高代码编写、调试、阅读和管理效率。 1.ESLint 简介&#xff1a;用于检查JavaScript代码的语法和风格错误。 功能特色&#xff1a;支持多种规则&#xff0c;可以自定义规…

stdlib.h中的 atoi 函数

记忆方法&#xff1a; atoi可以理解为 arr to int 表示将char类型的字符串转换成int类型的整数。例如"1234"转换成 1234。 传入值传出值&#xff1a;int atoi(char* arr); 将arr里面的字符型数字转变成整形数字。函数开始会跳过除了0到9的数字字符&#xff0c;…