MySQL事务的四大特性以及并发事务问题

news2025/1/13 3:00:43

 事务的四大特性ACID

 【原子性(Atomicity)】:事务是不可分割的最小单元,要么全部成功,要么全部失败。(eg:转账案例,转账过程中任何一步操作失败了,那么整个事务就失败了)

【一致性(Consistency)】:事务完成时,必须使所有的数据都保持一致状态。(不管是事务执行成功提交,还是事务执行失败回滚了,张三李四账户余额加起是一个恒定值。转账前总和6000,转账后不可能出现两个人的账户总和8000)

【隔离性(Isolation):】数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行。(隔离性是指:有并发个事务,事务A、事务B同时操作数据库,A事务在操作的时候不会影响B事务的执行;同理B事务在操作的时候,也不会影响A事务的执行。它们两个事务在独立的环境下运行的,互不影响。)

【持久性(Persistence)】: 事务一旦提交或回滚,它对数据库中的数据改变就是永久的。(不管是事务执行成功提交了,还是操作异常回滚了,它对数据库的改变时永久的,因为数据库的数据最终是存储在磁盘的,那么存储在磁盘的数据它会被永久的保留下来)

事务-并发事务问题

脏读:一个事务读到另一个事务还没有提交的数据。

不可重复读:一个事务先后读取同一条记录,但两次读取的数据不同,称之为不可重复读。

幻读: 一个事务按照条件查询事务时,没有对应的数据行,但是在插入数据时,又发现这行数据已存在,好像出现了幻影。

并发事务出现的问题-图文描述:

脏读:B事务读取A事务修改后(update后)未提交的数据;事务A对id=1 的数据进行了修改,且修改后还未提交事务,此时事务B查询id=1的数据,查到的数据是事务B修改后未提交的数据。这种情况称之为脏读。

不可以重复读:A事务一共有4个操作,第一步时查询数据库id=1的数据,第二步执行其他操作时,此时B事务对id=1的数据进行修改(注:并发事务),修改后提交事务。A事务执行第三步查询id=1的数据时,和第一步查询id=1的返回结果不一样(因为B事务对id=1的数据进行了修改),这种情况称之为不可以重复读。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python装饰器使用方法详解

文章目录1 装饰器背景知识1.1 基本概念1.2 应用场景2 简单的装饰器代码3 使用装饰器记录函数执行次数4 带参数的装饰器5 装饰器处理有返回值的函数1 装饰器背景知识 1.1 基本概念 装饰器(Decorator)是 Python 中一种函数或类,用来修饰其他函…

RabbitMQ部署

RabbitMQ部署1.单机部署1.1.下载镜像1.2.安装MQ1.3访问管理端2.集群部署2.1.集群分类2.2.设置网络1.单机部署 我们在Centos7虚拟机中使用Docker来安装,如未安装dockr,请参考《Centos7安装Docker》 1.1.下载镜像 方式一:在线拉取 docker …

C语言linux线程库pthread的简单使用教程

POSIX线程(pthread)库 POSIX线程库是用于C/C的基于标准的线程API。它允许产生一个新的并发流程。它在多处理器或多核系统上最为有效,在这些系统中,可以将流程安排在另一个处理器上运行,从而通过并行或分布式处理提高速…

flask框架全解

文章目录简介wsgiref安装配置文件方式一(debug方式配置)方式二(环境变量方式,很少见)方式三(配置文件方式)其他配置方式flask app路由组成写法动态路由的过滤查询字符串传参json和form等数据反向…

deepin系统如何安装惠普打印机

deepin系统如何安装惠普打印机 导读 想必现在有很多小伙伴对于deepin系统如何安装惠普打印机 安装惠普打印机的方法方面的知识都比较想要了解,那么今天小好小编就为大家… 想必现在有很多小伙伴对于deepin系统如何安装惠普p1007打印机 安装惠普打印机的方法方面的知…

【图卷积神经网络】02-谱域图卷积介绍

注:本文为第2章谱域图卷积介绍视频笔记,仅供个人学习使用 目录1、图卷积简介1.1 图卷积网络的迅猛发展1.2 回顾,经典卷积神经网络已在多个领域取得成功1.3 两大类数据1.4 经典卷积神经网络的局限:无法处理图数据结构1.5 将卷积扩展…

Python学习基础之快速入门

目录 首先我们下载最新的python版本:3.0 编写一个hello world 什么是python里面的IPO python运行有几种模式 编写一个温度转换器 在windows上执行python程序 官网:Welcome to Python.org Python 是一门易于学习、功能强大的编程语言。它提供了高效的…

保护视力台灯是白光还是暖光?盘点专业护眼的暖光护眼台灯

保护视力的灯光颜色是最接近太阳光最好,而白光与暖光主要是色温来控制的,低色温(3000K以下),中性色温(4000K左右),高色温(5000K以上),低色温的光源…

在不受支持的 Mac 上安装 macOS Ventura、Monterey、Big Sur (OpenCore Legacy Patcher)

在不受支持的 Mac 上安装 macOS Ventura、Monterey、Big Sur (OpenCore Legacy Patcher) 请访问原文链接:https://sysin.org/blog/install-macos-13-on-unsupported-mac/,查看最新版。原创作品,转载请保留出处。 作者主页:www.s…

RabbitMQ入门与应用

RabbitMQ入门与应用1.初识MQ1.1.同步和异步通讯1.1.1.同步通讯1.1.2.异步通讯1.2.技术对比:2.快速入门2.1.安装RabbitMQ2.2.RabbitMQ消息模型2.3.导入Demo工程2.4.入门案例2.4.1.publisher实现2.4.2.consumer实现2.5.总结3.SpringAMQP3.1.Basic Queue 简单队列模型3…

python机器学习数据建模与分析——pandas中常用函数总结

本文主要对数据建模与分析中常使用到的pandas内置函数进行总结分析,以此来熟悉数据建模与分析的流程。 文章目录一、Pandas数据结构1.1 数据结构—Series1.1.1 Series的创建方式1.1.2 使用索引和获取数据1.2 数据结构—DataFrame1.2.1 DataFrame的创建方式1.2.2 使用…

变速积分PID算法及仿真

在普通的PID 控制算法中,由于积分系数k是常数,所以在整个控制过程中,积分增量不变。而系统对积分项的要求是,系统偏差大时积分作用应减弱甚至全无,而在偏差小时则应加强。积分系数取大了会产生超调,甚至积分…

强化学习笔记:基于价值的学习之价值迭代(python实现)

目录 1. 前言 2. 数学原理 3. 实现 3.1 Planner类 3.2 ValueIterationPlanner类 4. 运行结果及分析 1. 前言 在强化学习中,根据是否依赖于(环境的)模型,可以分为有模型(model-based)…

通信原理简明教程 | 模拟调制传输

文章目录1 模拟幅度调制1.1 模拟幅度调制的基本原理1.2 DSB-SC调制和AM调制1.3 SSB调制和VSB调制2 模拟角度调制2.1 角度调制的基本概念2.2 窄带调频和宽带调频2.3 调频信号的产生方法3 模拟调制系统的解调3.1 相干解调3.2 非相干解调4 模拟调制系统的抗噪声性能4.1 抗噪声性能…

Service Mesh

Service Mesh 参考如下文章:可以将此文章看作为下面文章的结合: https://zhuanlan.zhihu.com/p/61901608 https://philcalcado.com/2017/08/03/pattern_service_mesh.html https://zhuanlan.zhihu.com/p/153105848?from_voters_pagetrue 微服务演化进…

浅谈 开源许可证

目录浅谈 开源许可证一、什么是开源许可证1.1 什么是开源1.2 什么是开源许可证Copyleft 许可证(Copyleft 许可证)宽松许可证(permissive 许可证)二、为什么要有开源许可证2.1、No License:没有开源许可证意味着什么2.2…

38.Isaac教程--AprilTags

AprilTags ISAAC教程合集地址文章目录AprilTags源码Isaac Codelet运行示例应用程序在主机系统上运行示例应用程序在 Jetson 上运行应用程序在 Websight 中查看应用程序的输出AprilTags 是一种流行的基准标记形式。 它在机器人技术中有广泛的应用,包括对象跟踪、视觉…

数据挖掘领域十大经典算法

一、什么是数据挖掘?数据挖掘是人工智能和数据库领域研究的热点问题,所谓数据挖掘是指从数据库的大量数据中揭示出隐含的、先前未知的并有潜在价值的信息的非平凡过程。数据挖掘是一种决策支持过程,它主要基于人工智能、机器学习、模式识别、…

蓝桥杯STM32G431RBT6学习——USART

蓝桥杯STM32G431RBT6学习——USART 前言 串口在蓝桥杯近几届中考频也相对较高(十三、十二届均考),因此必然也要学习一下。 作为后来之秀的开源项目DAP Link不仅支持SWD调试下载,同时还支持串口调试功能,国信长天开…

软件课设(Ⅲ)——padavan-ng编译以及内核模块修改

我记得今年的很多笔试面试都遇到了linux相关的操作,答题状况都挺……昂。算是补课吧,正好大四的毕业实习、软3还有研0的项目都需要linux的环境进行推进,记录一下,聊作纪念。 实验要求 编译系统,下载并提交,…