• MySQL-8.0 事务隔离级别


    MySQL-8.0 事务隔离级别

    查看数据库事务隔离级别

    mysql> show variables like 'transaction%';
    mysql> select @@transaction_isolation;
    mysql> SELECT @@GLOBAL.transaction_isolation, @@GLOBAL.transaction_read_only;
    mysql> SELECT @@SESSION.transaction_isolation, @@SESSION.transaction_read_only;
    
    • 1
    • 2
    • 3
    • 4

    修改事务隔离级别的方式

    • 由低到高分别为
    1. read uncommitted (读未提交)
    2. read committed (读已提交)
    3. repeatable read (可重复)
    4. Serializable (可串行化)

    1.只在本次会话有效

    mysql> set session transaction isolation level read committed;
    
    • 1

    2.设置全局的事务隔离级别,该设置不会影响当前已经连接的会话,新会话,将使用新设置的事务隔离级别

    mysql> set global transaction isolation level read committed;
    
    • 1

    3.修改配置文件,重启后生效

    [mysqld]
    transaction-isolation = REPEATABLE-READ
    transaction-read-only = OFF
    
    • 1
    • 2
    • 3
    select id,name,count from ent_stock;
    select id,name,count from ent_stock lock in share mode;
    update ent_stock s set s.count = s.count-1 where s.name = '库存-1';
    insert into ent_stock(id,name,count) values(uuid(),'库存-3',1000);
    
    • 1
    • 2
    • 3
    • 4
    级别脏读不可重复读幻读
    read uncommitted (读未提交)
    read committed (读已提交)
    repeatable read (可重复读)
    Serializable (可串行化)

    read uncommitted (读未提交)

    初始数据:
    开两个mysql窗口

    在这里插入图片描述
    设置事务级别
    在这里插入图片描述

    Transication ATransication B
    begin
    centered 文本居中
    在这里插入图片描述
    commit
    在这里插入图片描述在这里插入图片描述

    rollback:

    Transication ATransication B
    begin
    centered 文本居中
    在这里插入图片描述
    rollback;在这里插入图片描述
    在这里插入图片描述

    read committed (读已提交)

    设置事务级别

    在这里插入图片描述

    Transication ATransication B
    begin
    centered 文本居中
    在这里插入图片描述
    commit
    在这里插入图片描述在这里插入图片描述

    rollback:

    Transication ATransication B
    begin
    centered 文本居中
    在这里插入图片描述
    rollback;在这里插入图片描述
    在这里插入图片描述
  • 相关阅读:
    目标检测YOLO系列从入门到精通技术详解100篇-【图像处理】图像分割
    2022年8月的工作经历
    NLP工具——自制zero-shot事件抽取器
    Linux中配置sudo用户访问权限
    【Linux】管道
    系统架构设计师考试大纲
    渗透测试-靶机打靶思路与方法
    2022蓝帽杯半决赛
    MySQL 练习<1>
    365包包模式讲解
  • 原文地址:https://blog.csdn.net/weixin_43064364/article/details/127620371