网络安全--mysql中事务锁以及事务隔离解析

这篇具有很好参考价值的文章主要介绍了网络安全--mysql中事务锁以及事务隔离解析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、事务锁

1、个人理解:

专一性和历史性,例如一个男人历史上是花心的,但当他成长后开启begin和update后变的专一了,多项事务也影响不到他了,直到水泥封心,只可被一个人查询在此我们进入正题:

一、我们建立docker下的mysql镜像创建表格如下并且开启多会话进行实验: 

网络安全--mysql中事务锁以及事务隔离解析,mysql,数据库

 网络安全--mysql中事务锁以及事务隔离解析,mysql,数据库

 2、插入数据正常查询比较

第一事务:

网络安全--mysql中事务锁以及事务隔离解析,mysql,数据库

 第二事务:

网络安全--mysql中事务锁以及事务隔离解析,mysql,数据库

 开启事务锁后比较:

网络安全--mysql中事务锁以及事务隔离解析,mysql,数据库

网络安全--mysql中事务锁以及事务隔离解析,mysql,数据库

 很明显在我没有提交事务的时候,数据被锁住了无法查询,除非你提交数据才可查询

网络安全--mysql中事务锁以及事务隔离解析,mysql,数据库

 网络安全--mysql中事务锁以及事务隔离解析,mysql,数据库

 二、共享锁

开启共享锁的时候lock in shar mode;

数据是可读的,但是是不能写的

三、mysql 有四级事务隔离级别 

读未提交 READ-UNCOMMITTED | 0:存在脏读,不可重复读,幻读的问题

读已提交 READ-COMMITTED | 1:解决脏读的问题,存在不可重复读,幻读的问题

 可重复读 REPEATABLE-READ | 2:解决脏读,不可重复读的问题,存在幻读的问题,默认隔离级别,使用 MMVC机制 实现可重复读

序列化 SERIALIZABLE | 3:解决脏读,不可重复读,幻读,可保证事务安全,但完全串行执行,性能最低

解释:
脏读(Dirty Read):
脏读发生在一个事务中读取了另一个事务未提交的数据。也就是说,一个事务读取了另一个事务的临时数据,但是这些数据可能会在后续操作中被回滚,从而导致读取到的数据实际上是无效的。
例如,一个事务 A 更新了某一行数据,但还没有提交。此时另一个事务 B 来读取了这个数据,然后事务 A 回滚了操作。这样事务 B 读取到的数据就是无效的,因为它实际上并不应该被提交。

幻读(Phantom Read):
幻读是指在一个事务中,同一查询在不同时间执行时,得到的结果集不一致。通常,这是因为另一个事务插入了新的数据行或删除了数据行,导致查询结果不一致。

解决幻读问题:

为什么说 MVCC 和 Gap Lock 解决了 MySQL 的幻读问题 - piperck - 博客园 (cnblogs.com)文章来源地址https://www.toymoban.com/news/detail-635080.html

到了这里,关于网络安全--mysql中事务锁以及事务隔离解析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数据库】事务的隔离级别以及实现原理

    经常提到数据库的事务,那你知道数据库还有事务隔离的说法吗,事务隔离还有隔离级别,那什么是事务隔离,隔离级别又是什么呢?本文就帮大家梳理一下。 事务,由一个有限的数据库操作序列构成,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。

    2023年04月26日
    浏览(37)
  • 网络空间安全解析A模块解析

    前言 这是作者第一次写文章,可能会有一些不好的地方。 有要环境+QQ:3464531613 任务一:登录安全加固 任务环境说明: ✓ 服务器场景:LOG:(开放链接) ✓ 用户名:root密码:root ✓ 服务器场景:Web:(开放链接) ✓ 用户名:administrator密码:P@ssw0rd 1.密码策略(Web) a.最小密码长度不少于 8 个字

    2024年02月02日
    浏览(33)
  • MySQL的事务特性、事务特性保证和事务隔离级别

            事务是指要么所有的操作都成功执行,要么所有的操作都不执行的一组数据库操作。 一、MySQL提供了四个事务特性,即ACID:          1. 原子性(Atomicity) :一个事务中的所有操作要么全部提交成功,要么全部回滚失败,保证事务的原子性。          2. 一

    2024年02月03日
    浏览(37)
  • 【JavaEE】Spring事务-@Transactional参数介绍-事务的隔离级别以及传播机制

    【JavaEE】Spring 事务(2) 参数 作用 value 当配置了多个事务管理器时,可以使用该属性指定选择哪个事务管理器 transactionManager 当配置了多个事务管理器时,可以使用该属性指定选择哪个事务管理器 isolation 事务的隔离级别.默认值为solation.DEFAULT propagation 事务的传播机制,默认值

    2024年02月10日
    浏览(45)
  • 【网络安全】文件包含漏洞解析

    博主昵称:跳楼梯企鹅 博主主页面链接: 博主主页传送门 博主专栏页面连接: 专栏传送门--网路安全技术 创作初心:本博客的初心为与技术朋友们相互交流,每个人的技术都存在短板,博主也是一样,虚心求教,希望各位技术友给予指导。 博主座右铭:发现光,追随光,

    2024年02月01日
    浏览(34)
  • MySQL的事务隔离级别

    目录 事务隔离级别的概念 脏读(Dirty Read): 不可重复读(Non-Repeatable Read): 幻读(Phantom Read): 读未提交(Read Uncommitted) 读未提交隔离级别的特点 示例 优势和劣势 读已提交(Read Committed) 读已提交隔离级别的特点 示例 优势和劣势 可重复读(Repeatable Read) 可重复读隔

    2024年02月09日
    浏览(44)
  • 【MYSQL】事务隔离级别

    脏读 一个事务正在对一条记录做修改,在这个事务完成并提交前,另一个事务也来读取同一条记录,读取了这些未提交的“脏”数据,并据此做进一步的处理,就会产生未提交的数据依赖关系。这种现象被形象的叫作’脏读’(Dirty Reads)。 例子:事务A修改了一条数据1状态

    2024年01月19日
    浏览(34)
  • Mysql 索引 、事务、隔离级别

    目录 索引(index) 1.为什么要有索引? 2.引入索引的代价 3.索引的操作 4.索引的使用场景 5.索引的底层原理 事务 (transaction) 事物的回滚是怎么做到的 事物的四大特性 并发执行事务带来的问题 隔离级别 索引是一种为了加快数据库查询(操作)速度而引入的一种手段,需要占用额

    2024年01月20日
    浏览(52)
  • 详解MySQL事务隔离级别

    一个事务具有 ACID 特性,也就是(Atomicity、Consistency、Isolation、Durability,即 原子性 、 一致性 、 隔离性 、 持久性 ),本文主要讲解一下其中的 Isolation ,也就是事务的 隔离性 。 概述 四种隔离级别分别是: 读未提交(Read Uncommitted) :最低的隔离级别,事务对数据的修改即使

    2024年02月09日
    浏览(46)
  • 【MySQL】事务与隔离级别详解

    事务就是一组DML语句组成 ,这些语句在逻辑上存在相关性,这一组DML语句要么全部成功,要么全部失败,是一个整体(原子性)。例如买票操作,上层看来是一个单纯的买票操作,但是下层却需要一条或多条SQL语句来完成转账操作,这一组SQL是一个整体,被称为事务。事务还

    2024年02月15日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包