iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL中隔离级别的示例分析
  • 397
分享到

MySQL中隔离级别的示例分析

2023-06-01 11:06:20 397人浏览 安东尼
摘要

这篇文章主要介绍MySQL中隔离级别的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!MySQL入门--事务隔离级别1) 隔离级别介绍如果一个客户机的事务更改了数据,其他客户机的事务是应发现这些更改还是应与其隔

这篇文章主要介绍MySQL中隔离级别的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

MySQL入门--事务隔离级别

1) 隔离级别介绍

如果一个客户机的事务更改了数据,其他客户机的事务是应发现这些更改还是应与其隔离,事务隔离级别可以确定同时进行的事务在访问相同数据时彼此交互的方式。使用存储引擎可实现隔离级别。隔离级别选项在不同的数据库服务器之间是不一样的,因此, InnoDB 所实现的级别可能与其他数据库系统所实现的级别并不完全对应。InnoDB 可实现四种隔离级别,用于控制事务所做的更改在多大程度上可由其他同时进行的事务注意到。四种隔离级别如下:

l  READ UNCOMMITTED:允许事务查看其他事务所进行的未提交更改;允许发生“脏” 读、不可重复读和虚读。

l  READ COMMITTED:允许事务查看其他事务所进行的已提交更改;允许发生不可重复读和虚读。未提交的更改仍不可见。

l  REPEATABLE READ:确保每个事务的 SELECT 输出一致,InnoDB 的默认级别;无论其他事务所做的更改是否已提交,两次都会获得相同的结果。换句话说,也就是不同的事务会对相同的数据产生一致的结果。

l  SERIALIZABLE:将一个事务的结果与其他事务完全隔离;与 REPEATABLE READ 类似,但其限制性更强,即一个事务所选的行不能由其他事务更改,直到第一个事务完成为止。

MySQL中隔离级别的示例分析

2) 设置隔离级别

系统默认事务级别为:repeatable-read

方法一、 服务器启动时设置级别。

–  在Mysqld 命令中使用--transaction-isolation选项。

–  在配置文件中设置transaction-isolation:

[mysqld]

transaction-isolation = <isolation_level>

在选项文件中或在命令行上将<isolation_level> 值设置为:

l  READ-UNCOMMITTED

l  READ-COMMITTED

l  REPEATABLE-READ

l  SERIALIZABLE

方法二、使用SET TRANSACTION ISOLATION LEVEL 语句为正在运行的服务器设置。

– 语法示例:

SET GLOBAL TRANSACTION ISOLATION LEVEL <isolation_level>;

SET SESSION TRANSACTION ISOLATION LEVEL <isolation_level>;

SET TRANSACTION ISOLATION LEVEL <isolation_level>;

对于SET TRANSACTION ISOLATION LEVEL 语句,将<isolation_level> 值设置为:

l  READ UNCOMMITTED

l  READ COMMITTED

l  REPEATABLE READ

l  SERIALIZABLE。

此事务级别可以全局设置,也可以按会话设置。如果没有显式指定,则事务隔离级别将按会话进行设置。例如,以下语句会将当前mysql 会话的隔离级别设置为READ COMITTED:

SET TRANSACTION ISOLATION LEVEL READ COMMITTED;

该语句相当于:

SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;

要设置所有后续mysql 连接的默认级别,请使用GLOBAL 关键字,而不是SESSION:

SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;

注:设置的全局默认事务隔离级别适用于从设置时起所有新建立的客户机连接。现有连接不受影响。

方法三、SET GLOBAL TX_ISOLATION

         需要 SUPER 权限

Mysql>set global tx_isolation=’ READ-COMMITTED’

         Mysql>select @@tx_isolation;

         Mysql>show variables like ‘tx_isolation’;

transaction_isolation MySQL 5.7.20引入,目的是替换即将弃用的tx_isolation(MySQL 8.0);

 (root@localhost) [infORMation_schema]> show variables like '%isolat%';

+-----------------------+-----------------+

| Variable_name         | Value           |

+-----------------------+-----------------+

| transaction_isolation | REPEATABLE-READ |

| tx_isolation          | REPEATABLE-READ |

+-----------------------+-----------------+

transaction_isolation was added in MySQL 5.7.20 as an alias for tx_isolation, which is now deprecated and is removed in MySQL 8.0. Applications should be adjusted to use transaction_isolation in preference to tx_isolation.

以上是“MySQL中隔离级别的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中隔离级别的示例分析

本文链接: https://www.lsjlt.com/news/227715.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL中隔离级别的示例分析
    这篇文章主要介绍MySQL中隔离级别的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!MySQL入门--事务隔离级别1) 隔离级别介绍如果一个客户机的事务更改了数据,其他客户机的事务是应发现这些更改还是应与其隔...
    99+
    2023-06-01
  • MySQL事务隔离级别的示例分析
    这篇文章将为大家详细讲解有关MySQL事务隔离级别的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内...
    99+
    2024-04-02
  • Mysql事务隔离级别原理的示例分析
    这篇文章主要介绍Mysql事务隔离级别原理的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!说说事务的隔离级别吧?老实说,事务隔离级别这个问题,无论是校招还是社招,面试官都爱问...
    99+
    2024-04-02
  • Mysql事务隔离级别之读提交的示例分析
    这篇文章主要为大家展示了“Mysql事务隔离级别之读提交的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Mysql事务隔离级别之读提交的示例分析”这篇文...
    99+
    2024-04-02
  • mysql隔离级别详解及示例
    目录mysql的4种隔离级别创建数据表:设置隔离级别只是单纯知道事物的隔离级别,但是从未操作过 今日操作一次。 脏读(Drity Read):某个事务已更新一份数据,另一个事务在此时...
    99+
    2024-04-02
  • Mysql案例刨析事务隔离级别
    目录1. 理论SERIALIZABLEREPEATABLE READREAD COMMITTEDREAD UNCOMMITTED2. SQL 实践2.1 查看隔离级别2.2 READ...
    99+
    2024-04-02
  • mysql中的4种隔离级别分别是什么
    这篇文章主要讲解了“mysql中的4种隔离级别分别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql中的4种隔离级别分别是什么”吧!1、读未提交,即所有事务都能看到其他未提交事务...
    99+
    2023-06-20
  • MySQL中四种隔离级别分别是什么
    这篇文章给大家分享的是有关MySQL中四种隔离级别分别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。事务的隔离性比想象的要复杂,在 SQL 标准中定义了四种级别的隔离级别。...
    99+
    2024-04-02
  • mysql事务隔离的级别
    这篇文章主要介绍“mysql事务隔离的级别”,在日常操作中,相信很多人在mysql事务隔离的级别问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mysql事务隔离的级别”的疑惑...
    99+
    2024-04-02
  • 【MySQL】事务及其隔离性/隔离级别
    需要云服务器等云产品来学习Linux的同学可以移步/-->腾讯云-->阿里云-->华为云 show variables like 'autocommit';+---------------+-------+| Variable_name...
    99+
    2023-09-01
    mysql 数据库
  • mysql中有哪些隔离级别
    本篇文章为大家展示了mysql中有哪些隔离级别,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1、read uncommitted(RU):是不允许发生脏写的不可能两个事务在没提交的情况下去更新同一行...
    99+
    2023-06-15
  • mysql的隔离级别有哪些
    MySQL的隔离级别有以下四个:1. 读未提交(Read Uncommitted):最低的隔离级别,允许一个事务读取另一个未提交的事...
    99+
    2023-08-19
    mysql
  • MySQL隔离级别有哪些
    这篇文章将为大家详细讲解有关MySQL隔离级别有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。业务的特性  业务是有四个特性(ACID)的,分别是原子性...
    99+
    2024-04-02
  • MySQL中怎么判定隔离级别
    这期内容当中小编将会给大家带来有关MySQL中怎么判定隔离级别,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。  ACID的特性  1.原子性(Atomicity)  事务...
    99+
    2024-04-02
  • Mysql有哪些隔离级别
    今天就跟大家聊聊有关Mysql有哪些隔离级别,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。  什么是事务  事务是应用程序中一系列严密的操作,所有操...
    99+
    2024-04-02
  • MySQL中有哪四种隔离级别
    这篇文章将为大家详细讲解有关MySQL中有哪四种隔离级别,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 什么是事务事务是应用程序中一系列严密的操作...
    99+
    2024-04-02
  • MySQL的事务隔离级别介绍
    本篇内容介绍了“MySQL的事务隔离级别介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是事务?数据...
    99+
    2024-04-02
  • MYSQL事务的隔离级别与MVCC
    目录前言1. 事务(transaction)的起源1.1. 事务的定义1.2. 哪些存储引擎支持事务2. MySQL的事务语法2.1. 自动提交2.2. 手动操作事务2.2.1. 开...
    99+
    2024-04-02
  • MySQL中的事务隔离级别是什么
    MySQL中的事务隔离级别包括四种:READ UNCOMMITTED(读未提交)、READ COMMITTED(读已提交)、REPE...
    99+
    2024-04-09
    MySQL
  • 如何修改mysql的隔离级别
    这篇文章给大家分享的是有关如何修改mysql的隔离级别的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 修改mysql隔离级别的方法:1、找到“skip...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作