mysql中隔离级别和锁有什么关系

数据库事务的隔离级别有4个。由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable。这四个级别能够逐个解决脏读、不可反复读、幻读这几类问题。MySql设置的隔离级别默觉得Repeatable Read。可反复读级别。

一、事务的4个基本特征

Atomic(原子性):
事务中包括的操作被看做一个逻辑单元。这个逻辑单元中的操作要
么所有成功。要么所有失败。

Consistency(一致性):
仅仅有合法的数据能够被写入数据库,否则事务应该将其回滚到最初
状态。

Isolation(隔离性):
事务同意多个用户对同一个数据进行并发訪问,而不破坏数据的正
确性和完整性。同一时候。并行事务的改动必须与其它并行事务的改动
相互独立。

Durability(持久性):
事务结束后。事务处理的结果必须可以得到固化。

二、数据库隔离级别

数据库事务的隔离级别有4个。由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable。这四个级别能够逐个解决脏读、不可反复读、幻读这几类问题。MySql设置的隔离级别默觉得Repeatable Read。可反复读级别。

隔离级别能够配置。

三、锁

一次封锁or两段锁?

由于有大量的并发訪问,为了预防死锁。一般应用中推荐使用一次封锁法。就是在方法的開始阶段。已经预先知道会用到哪些数据,然后所有锁住,在方法执行之后,再所有解锁。

这样的方式能够有效的避免循环死锁,但在数据库中却不适用,由于在事务開始阶段,数据库并不知道会用到哪些数据。
数据库遵循的是两段锁协议,将事务分成两个阶段,加锁阶段和解锁阶段(所以叫两段锁)

加锁阶段:在该阶段能够进行加锁操作。在对不论什么数据进行读操作之前要申请并获得S锁(共享锁,其他事务能够继续加共享锁,但不能加排它锁),在进行写操作之前要申请并获得X锁(排它锁,其他事务不能再获得不论什么锁)。加锁不成功,则事务进入等待状态,直到加锁成功才继续运行。
解锁阶段:当事务释放了一个封锁以后,事务进入解锁阶段。在该阶段仅仅能进行解锁操作不能再进行加锁操作。

延伸阅读

什么是Java

Java 是一个通用术语,用于表示 Java 软件及其组件,包括“Java 运行时环境 (JRE)”、“Java 虚拟机 (JVM)”以及“插件”。

Java具有大部分编程语言所共有的一些特征,被特意设计用于互联网的分布式环境。Java具有类似于C++语言的形式和感觉,但它要比C++语言更易于使用,而且在编程时彻底采用了一种以对象为导向的方式。

使用Java编写的应用程序,既可以在一台单独的电脑上运行,也可以被分布在一个网络的服务器端和客户端运行。另外,Java还可以被用来编写容量很小的应用程序模块或者applet,做为网页的一部分使用。applet可使网页使用者和网页之间进行交互式操作。

文章标题:mysql中隔离级别和锁有什么关系,发布者:E.Z,转载请注明出处:https://worktile.com/kb/p/54031

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
E.ZE.Z认证作者
上一篇 2023年6月7日 下午6:28
下一篇 2023年6月7日

相关推荐

  • SaaS与PaaS与IaaS:云服务的区别

    SaaS、PaaS和IaaS 是三种主要的云服务模型,它们的核心差别在于控制和管理层级、使用场景以及目标用户。1、控制和管理层级:SaaS 提供完整的应用服务,PaaS 提供平台和开发工具,IaaS 提供基础设施;2、使用场景:SaaS 用于日常业务操作,PaaS 更多用于软件开发,IaaS 用于运…

    2023年9月13日
    57900
  • pcm编码由哪些部分构成

    pcm编码由三部分构成:1、极性码;2、段落码;3、段内码。极性码是指,数字通信系统中用来表示二进制信息“1”和“0”的码型。根据表示方法的不同,极性码可以分为单极性归零码、单极性不归零码、双极性归零码、双极性不归零码等。 一、构成pcm编码的三部分 二、pcm编码的转换过程 延伸阅读 极性码分类

    2023年1月6日
    1.7K00
  • devops首要任务是什么

    开展DevOps实践中,确立自动化流程、加强团队合作、持续交付软件、确保即时反馈构成首要职责,其中确立自动化流程无疑是关键,因为它直接影响着开发及运营的效率与协同。在DevOps哲学中,自动化是实现快速、可靠交付的基础,其核心价值在于减少人为错误,提升工作的重复性和可预测性,允许更频繁的发布和更高质…

    2024年3月26日
    6500
  • devops+jira是什么

    DevOps 与 Jira 结合,引领软件交付和团队协作的最新实践。120-200字范围内的精炼阐释,凸显 DevOps 强化敏捷性、Jira 作为管理工具 的协同效能。针对此联合,描述 DevOps 原则与 Jira 功能的互补性。DevOps 为组织提供一种文化和技术上的框架,促进软件开发(De…

    2024年3月26日
    7400
  • 采购部门如何管理项目进度

    采购部门管理项目进度是一个关键而复杂的过程,包括了确定项目需求、选择供应商、协调供应链、监控项目进度、以及风险管理等多个环节。其中,确定项目需求是基础,也是成功管理项目进度的关键。它涉及到对项目目标的明确、对所需物资、服务的详细列表,以及这些需求的时间表的制定。这一阶段需要精确的预测和深入的市场研究…

    2024年4月10日
    4800
  • OKR是否可以应用于创新项目

    摘要:OKR(Objectives and Key Results,目标与关键结果)模型被广泛认为是创新项目实施中的有效管理工具,其可辅助团队聚焦关键目标,并提供衡量进展的清晰指标。本文探讨OKR 在创新项目中的适用性及其实施步骤和优势。论点涵盖:1、定向创新驱动力;2、增强团队协作与沟通;3、提高…

    2023年11月15日
    30800
  • oa用印是什么

    OA用印指的是在办公自动化(Office Automation)系统中进行公文、文件等的电子签章。这一过程通常涉及到企业、机关单位的行政审批、电子文档管理等环节,以电子形式对文档加盖公章,它替代了传统的手工盖章方法,提高了工作效率、保障了文档安全,还能有效防止伪造与篡改。OA用印的核心作用在于实现电…

    2024年1月17日
    31000
  • 流程管理的具体工作有哪些方面

    流程管理的具体工作有:一、对现有工作过程进行流程梳;二、流程活动分析;三、流程的优化、改造、再造。对现有工作过程进行流程梳这一工作包括将企业内部现有的行事方式,运用流程图的形式予以描绘,以转化到运行流程管理形式下来。 一、对现有工作过程进行流程梳 这一工作包括将企业内部现有的行事方式,运用流程图的形…

    2023年4月16日
    57400
  • 项目管理软件哪个好用

    好用的项目管理软件有:一、PingCode;二、JIRA;三、tracup;四、coding。PingCode是国内软件研发项目管理软件。功能以及解决的问题有:能够支持看板、敏捷等多种项目的管理;管理团队目标,监控单或多项目的进度、管理计划分配资源、管理团队或个人的工作效率。 一、PingCode …

    2023年4月16日
    38300
  • type属性值有哪些

    type属性值有:1、text;2、password;3、button/submit/reset;4、radio;5、checkbox;6、time;7、week;8、month;9、date;10、datetime_local;11、search;12、color等。text是指,input将会接…

    2023年1月15日
    1.5K00

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部