当前位置: 首页 > 网络应用技术

您真的了解数据库的隔离级别吗?如果您不明白,请进入

时间:2023-03-06 01:54:22 网络应用技术

  糟糕,这是数据库的隔离水平。每个人都必须听呕吐。与数据库相关的每个访谈或技术共享都将始终提及数据库的隔离水平。您真的了解吗?这些特征是什么,我们如何选择正确的东西来隔离。(本文仅针对MySQL数据库介绍)

  隔离的水平是解决事物的问题。

  当我们编写并发过程时,并发事物的问题实际上类似于线程安全问题。线程安全问题是多个线程同时修改了一个变量。内容设备是,多个端子的记录连接以同时修改数据库,也可能会有类似的问题,并且情况将会回滚,这将增加问题的复杂性。

  我们总结了事物的问题,这是以下内容:

  总结:

  那些不能反复阅读的人很容易混淆。不要反复阅读对修改的重点。Phantom阅读重点是添加或删除。

  为了解决无法重复的问题,您只需要锁定满足条件的行,并解决锁定表的需求。

  SQL的标准是定义四种类型的隔离,

  基于上诉的及平衡,MySQL为我们提供了几种解决方案,如下(√选择问题)

  读取(读取的)√√√阅读(read-commith)√√可重复阅读默认值(√)可爱(可序列化)实际上是锁定的级别,如果您忽略了任何问题,您将不会被锁定,并且您会锁定解决即将执行的并行执行。

  随着锁定程度越来越强,数据库的同时性能变得越来越弱。

  之前推荐两个博客文章:

  如果您不知道MySQL锁的概念,则可以阅读MySQL的简介。

  为了优化锁的性能,MySQL使用MVCC多次并发控制。如果您不明白,您可以阅读“如何实现MySQL中的MVCC。您知道吗?”

  隔离的水平是数据库为我们提供了选择权。在性能和数据准确性方面,有必要根据业务做出选择。

  对于MySQL,INNDB引擎将与事物和事物有关。