对于MySQL事务有四种隔离级别,分别是以下四种:

1.读未提交

2.读提交

3.可重复读

4.串行化(加锁)

对于隔离我们都是说在并发的情况下发生的事情,读取的数据在并发的情况下会发生什么情况。

并且我们知道所有的事务都是原子性操作。但是在这些事务中隔离等级不一样,并发的速度和安全情况都是不一样的。等级越高,速度越慢但越安全。

1.读未提交:表示根本什么措施都没有,A读取了两次数据,但是B中间修改了一下数据,那么对于A来说,就会出现两次读取的数据不一致的情况。

2.读提交:还是A读取了两次数据,但是B中间修改了数据,这次跟上次的区别是,如果B修改数据的操作没有提交的话,A最后一次读取的数据跟第一次读取的数据是一样的值。但是如果在B提交了之后的话,A读取到的数据就是不一样了,这就是这个提交的意义,B提交和不提交的情况下,A读取的数据是不同的情况。

3.可重复读:代表无论B怎么改,只要A开始了这次事务,不论B在它的事务中修改数据没有,对A来说都是没有影响的。

换个角度是,只要A开始自己的事务,只要这个事务还没有提交,那么在这次事务中读取的数据肯定是一样的,这就是这个可重复读的重复的意思。

4:串行化:这个就是直接加锁了,对于A事务操作了数据,那么B就动不了,没有权限了。加锁嘛,就是这样。

对于MySQL数据库四种隔离等级的更多相关文章

  1. 【转】MYSQL数据库四种索引类型的简单使用--MYSQL组合索引“最左前缀”原则

    MYSQL数据库索引类型包括普通索引,唯一索引,主键索引与组合索引,这里对这些索引的做一些简单描述: (1)普通索引 这是最基本的MySQL数据库索引,它没有任何限制.它有以下几种创建方式: 创建索引 ...

  2. mysql的四种隔离级别

    一.READ UNCOMMITTED(未提交读) 在READ UNCOMMITTED级别,事务中的修改,即使未提交,对其他事务也都是可见的.事务可以读取未提交的数据,这也被称为脏读( Dirty RE ...

  3. mysql事务四种隔离级别

    事务的基本要素:原子性,一致性,隔离性,持久性. 事务并发问题:脏读,不可重复读,幻读. mysql隔离级别:read-uncommitted,read-committed,repeatable-re ...

  4. MySQL 四种隔离级别

    什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做. 事务的结束有 ...

  5. MySql四种隔离级别

    什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做. 事务的结束有 ...

  6. 面试问烂的 MySQL 四种隔离级别,看完吊打面试官!

    阅读本文大概需要 5.6 分钟. 来源:网络 什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操 ...

  7. MySQL 四种隔离级别详解,看完吊打面试官

    转发链接:https://zhuanlan.zhihu.com/p/76743929 什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就 ...

  8. MySQL面试题--常见的四种隔离级别

    什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做. 事务的结束有 ...

  9. MySQL 的 4 种隔离级别,你了解么?

    1.什么是事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消.也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做.事务的结束 ...

随机推荐

  1. router-link 使用精确匹配

    本来不想写router 规则匹配的问题,有一个笨球问,顺带写一下, 先配置一下路由 export default new Router({ routes: [ { path: '/', name: ' ...

  2. E. Tree Reconstruction 解析(思維)

    Codeforce 1041 E. Tree Reconstruction 解析(思維) 今天我們來看看CF1041E 題目連結 題目 略,請直接看原題 前言 一開始完全搞錯題目意思,還以為每次會刪除 ...

  3. Java中的微信支付(2):API V3 微信平台证书的获取与刷新

    1. 前言 在Java中的微信支付(1):API V3版本签名详解一文中胖哥讲解了微信支付V3版本API的签名,当我方(你自己的服务器)请求微信支付服务器时需要根据我方的API证书对参数进行加签,微信 ...

  4. 【开源】使用.Net Core和GitHub Actions实现哔哩哔哩每日自动签到、投币、领取奖励

    BiliBiliTool是一个B站自动执行任务的工具,使用.NET Core编写,通过它可以实现B站帐号的每日自动观看.分享.投币视频,获取经验,每月自动领取会员权益.自动为自己充电等功能,帮助我们轻 ...

  5. 4-20mA转RS485模拟量采集模块是怎么工作的?

    4-20mA信号是工业上常用的模拟信号,用来表示温度,距离,速度,角度等参数. 如果需要用PLC或者工控机来采集,通常要转换成数字信号.这时可以采购远向电子生产的模拟量采集模块. 常用的模拟量采集模块 ...

  6. Java学习的第三十二天

    1. 2.综合例题没太看懂 3.明天复习第十二章

  7. [BZOJ 2287/POJ openjudge1009/Luogu P4141] 消失之物

    题面: 传送门:http://poj.openjudge.cn/practice/1009/ Solution DP+DP 首先,我们可以很轻松地求出所有物品都要的情况下的选择方案数,一个简单的满背包 ...

  8. GDB调试基础使用方法

    尽管目前使用的VS code可以使用插件一键构建和运行程序,但GDB作为调试利器,还是值得花时间去学习的. 概述 GDB(GNU Debugger) 是一个由GNU开源组织发布的.UNIX/LINUX ...

  9. linux的mysql数据库创建和删除

    mysql -h localhost -u 用戶名 -p密碼                //连接数据库use desk_show;                                 ...

  10. 面试题:能谈谈Date、Datetime、Time、Timestamp、year的区别吗?

    一. 推荐阅读 首发地址:https://mp.weixin.qq.com/s/9zKX86P4kzlKla6-NyS3EA 使用推荐阅读,有更好的阅读体验 二.准备 如果面试官问你:了解 date. ...