1,Read uncommitted定义:

wiki上的定义如下:

未提交读(READ UNCOMMITTED)是最低的隔离级别。允许脏读(dirty reads),事务可以看到其他事务“尚未提交”的修改。

通过比低一级的隔离级别要求更多的限制,高一级的级别提供更强的隔离性。标准允许事务运行在更强的事务隔离级别上。(如在可重复读(REPEATABLE READS)隔离级别上执行提交读(READ COMMITTED)的事务是没有问题的)

Read uncommitted,可以读到其他事务未提交的修改。

2,修改Mysql事务隔离级别

首先修改Mysql的事务隔离级别为Read uncommitted。修改方法如下:

SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

SET GLOBAL TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

具体修改的方式可以参考如下:

SET [SESSION | GLOBAL] TRANSACTION ISOLATION LEVEL {READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE}

查看当前数据库事务状态:

SELECT @@global.tx_isolation;

SELECT @@session.tx_isolation;

SELECT @@tx_isolation;

3,Read uncommitted场景

新建一个简单的student表,设置id和name字段,开启事务1对表新增:

start TRANSACTION;

insert into student values (null , 'a');

事务不提交。

新建事务2,查询student表,我们在READ UNCOMMITTED级别下,可以看到其他事务未提交的数据:

start TRANSACTION;

select * from student;

COMMIT;

查看当前数据库事务状态:

SELECT * FROM information_schema.INNODB_TRX;

可以看到一条数据事务,事务级别为:

READ UNCOMMITTED

对事务1进行提交操作

COMMIT;

再去查看数据库事务状态,我们会看到状态正常。

总结 READ UNCOMMITTED很少用到实际的开发场景中,因为对并发的控制太低。

mysql 读未提交数据_mysql事务之未提交读(Read uncommitted)相关推荐

  1. mysql事务未提交读_mysql事务之未提交读Read uncommitted(仅学习)

    1,Read uncommitted定义: wiki上的定义如下: 未提交读(READ UNCOMMITTED)是最低的隔离级别.允许脏读(dirty reads),事务可以看到其他事务"尚 ...

  2. mysql重做日志恢复数据_MySQL中重做日志,回滚日志,以及二进制日志的简单总结...

    MySQL中有六种日志文件, 分别是:重做日志(redo log).回滚日志(undo log).二进制日志(binlog).错误日志(errorlog).慢查询日志(slow query log). ...

  3. mysql行级锁作用_Mysql事务及行级锁的理解

    在最近的开发中,碰到一个需求签到,每个用户每天只能签到一次,那么怎么去判断某个用户当天是否签到呢?因为当属表设计的时候,每个用户签到一次,即向表中插入一条记录,根据记录的数量和时间来判断用户当天是否签 ...

  4. oracle设置事务隔离级别为读已提交,oracle的事务隔离级别和读一致性

    oracle提供了三个隔离级别: 1.读提交 ,简而言之只能读取语句开始执行前提交的数据 2.串行,这个好理解,就是事务串行运行,避免经典的三个场景-脏读.不可重复读.幻读. 3.只读,oracle已 ...

  5. mysql如何进行视图恢复_mysql事务 视图 索引 备份和恢复

    事务 1.事务: 概念:是作为单个逻辑工作单元执行的一系列操作 多个操作作为一个整体向系统提交,要么都执行,要么都不执行 事务是一个不可分割的工作逻辑单元 默认情况下 , 每条单独的SQL语句视为一个 ...

  6. mysql 删除不了数据_MySQL不建议delete删除数据

    InnoDB存储架构 从这张图可以看到,InnoDB存储结构主要包括两部分:逻辑存储结构和物理存储结构. 逻辑上是由表空间tablespace -> 段segment或者inode -> ...

  7. mysql为什么不能插入数据_mysql为啥不能插入数据

    mysql为何不能插入数据? 安装AppServ后首次使用mysql,没有图形界面,在"MySql Command Line Client"的操作如下: ============= ...

  8. mysql按日期查询数据_mysql按日期查询数据

    问题:mysql按日期查询一个月内的数据,查询返回时结果集中只显示有数据的结果 需求:查询结果中假如当天没有数据,自动填零并输出 事件描述: sql语句: select DATE_FORMAT(dat ...

  9. mysql 软件导出导入数据_MySQL 之 导出导入数据

    mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u root -p --databases db_name > test_db.sql       ...

最新文章

  1. 电商分类模块写法_模块化写作——网络小说创作之典藏秘籍
  2. markdown 表格对齐方式、换行、内嵌列表、...
  3. Ruby Regexp
  4. Error: Module “xxx“ does not exist in container. / antd pro v5启用qiankun报错 / 同时使用mfsu和qiankun报错
  5. 数据库水平切分(MyCat分片)
  6. 指针的意义和linux的内存回收艺术
  7. ScheduledThreadPoolExecutor之scheduleWithFixedDelay和scheduleAtFixedRate的区别
  8. excel 链接批量转图片
  9. 货币单位PHP,PHP实现货币换算的方法_PHP
  10. 使用 matlab 数字图像处理(三)—— 实现图像的旋转(不使用 imrotate)
  11. HTTP服务端JSON服务端
  12. 台式计算机把光驱改成硬盘,笔记本电脑怎么更换SSD并将光驱位改为机械硬盘位?_硬件教程...
  13. 《银河英雄传说》杨威利经典语录2
  14. oracle系统优化
  15. Hadoop HDFS 基本命令
  16. ps怎么把图片上面的字去掉
  17. 窥探无线路由传输速率的秘密
  18. python支持char数据类型吗_python有char类型吗,
  19. ise 时钟约束_ISE 约束文件完整讲解
  20. Mathtype公式编辑器中插入空格

热门文章

  1. 关于word撤销功能无法使用的笔记
  2. 一种输电线路视频图像在线监测装置
  3. Android获取手机联系人匹配用户表并按字母A-Z排序展示
  4. 姚舜:华为,比你想象中更凶狠
  5. UnityVR--小程序2--吃金币
  6. 百度Apollo中ParkingLot与ParkingSpace的区别
  7. AS5048A SPI 14位磁旋转编码器
  8. 5.继承相关的小知识
  9. 通过木块砌墙题目体会动态规划算法
  10. 2013-2020 学年高数试题答案(共21套试卷)