位置: 编程技术 - 正文

mysql 详解隔离级别操作过程(cmd)(mysql隔离级别详解)

编辑:rootadmin

推荐整理分享mysql 详解隔离级别操作过程(cmd)(mysql隔离级别详解),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql的隔离级别,mysql4种隔离级别操作过程,mysql隔离级别如何实现,mysql隔离级别的实现,mysql隔离级别底层实现,mysql隔离级别详解,mysql隔离级别详解,mysql隔离级别详解,内容如对您有帮助,希望把文章链接给更多的朋友!

读未提交示例操作过程-Read uncommitted

1、打开两个MySql的命令提示行,均进入相同数据库,并检查当前表内容为相同数据如下:

2、在A、B两端执行select @@tx_isolation;检查当前默认的隔离级别别,可以发现都是

Repeatable Read ?可重复读-(在当前事务内,重复读取第一次读取过的数据就叫可重复读。)

3、修改A端的隔离级别为readuncommitted ?读未提交。意思是可以读取别人没有提交的数据。

在绿色的MySql5.5上请执行:

然后再查看是否已经发生改变:

4、在A、B两端都开启事务

5、在B端修改一行数据如:

其后在A端执行查询:select * from stud;

6、此时B端再次执行回滚操作

Rollback;

再在A端进行查询,结果发现数据又回到了之前的数据。这就是脏读:

7、对于B端写入的新数据,如果没有提交A端也一样能查询到,这叫幻读。

读已提交操作过程:-read COMMITTED

1、 检查A、B两端是否一致:

2、修改A端(左)的隔离级别为readcommitted;

mysql 详解隔离级别操作过程(cmd)(mysql隔离级别详解)

在A端开启事务:

starttransaction;

在B端开启事务

3、在A端进行查询:

在B端修改一行记录并提交

再回到A端进行查询,发现在同一个事务内,两次查询的结果不一样:

可重复读示例Repeatable Read

1、查看A端的隔离级别是否为Repeatableread级别:

Select@@tx_isolation;

2、先在A端在开启的事务内进行查询。

然后在B端修改数据库的内容。

最后再在A端的同一事务内进行查询,发现结果一致。

Serializable是最高级的隔离级别

1、在A端设置隔离级别为Serializable

在A端开启一个事务-并对stud表进行查询。

在B端开启一个事务,并写入一行记录。此时发现B的代码并没有执行,因为它在等A提交之后它才执行。

类似于线程同步的概念

这四种隔离级别采取不同的锁类型来实现,若读取的是同一个数据的话,就容易发生问题。例如:

脏读(Drity Read):某个事务已更新一份数据,另一个事务在此时读取了同一份数据,由于某些原因,前一个RollBack(回滚)了操作,则后一个事务所读取的数据就会是不正确的。

不可重复读(Non-repeatable read):在一个事务的两次查询之中数据不一致,这可能是两次查询过程中间插入了一个事务更新的原有的数据。

幻读(Phantom Read):在一个事务的两次查询中数据笔数不一致,例如有一个事务查询了几列(Row)数据,而另一个事务却在此时插入了新的几列数据,先前的事务在接下来的查询中,就会发现有几列数据是它先前所没有的

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

macOS Sierra安装Apache2.4+PHP7.0+MySQL5.7. Mac系统上虽然自带PHP和Apache,但是有时不是我们想要的版本呢。今天我们就在macOSSierra(..1)上安装比较新的版本的PHP版本,也就是PHP7.0+了。本篇博客

MyBatis 如何写配置文件和简单使用 MyBatis如何写配置文件和简单使用MyBatis3.x这里简单贴一下MyBatis的介绍,具体使用方法会在代码中贴出。MyBatis的前世今生MyBatis的前身就是iBatis,iBatis本是

CentOS下重启Mysql的各种方法(推荐) 1、通过rpm包安装的MySQLservicemysqldrestart/etc/inint.d/mysqldstart2、从源码包安装的MySQL//Linux关闭MySQL的命令$mysql_dir/bin/mysqladmin-uroot-pshutdown//linux启动MySQL的命令$

标签: mysql隔离级别详解

本文链接地址:https://www.jiuchutong.com/biancheng/350052.html 转载请保留说明!

上一篇:win10免安装版本的MySQL安装配置教程(win10免费安装吗)

下一篇:macOS Sierra安装Apache2.4+PHP7.0+MySQL5.7.16(macossierra安装发生错误)

  • 企业之间的借款利息计入什么科目
  • 资产负债表预收预付账款怎么填
  • 年末本年利润结转未分配利润
  • 必须开具增值税专用发票
  • 付了电费当月没有收到发票
  • 银行存款未达账项包括
  • 工程项目立项前包括哪几个过程
  • 所得税费用为负数需要体现在报表上吗
  • 财税2009年59号解读
  • 借款利息税前扣除比例
  • 季度申报财务报表如何更改
  • 返还经费
  • 财务费用算营业利润吗
  • 车辆完税证明怎么弄
  • 筹建人员是什么工作
  • 归还法人前期垫付款项
  • 鸿蒙系统桌面文件夹建立
  • 包装物押金为什么含税
  • iphone7plus怎么设置5g网络
  • 收到外运公司托收海运运费单据1000美元
  • 微软win11预览版
  • 为高新技术企业授牌
  • 逾期增值税扣税凭证
  • 二手房转让中转什么意思
  • 最有艺术气质的动物
  • vue element ui
  • 结转制造费用用什么科目
  • 语义特征的语法学概念
  • create_proc_entry
  • 处置车辆收入缴税规定
  • audit result
  • 什么是变动成本率
  • 运营费的税率
  • 坏账损失计入损益表
  • 原材料折价销售怎么算
  • 红字专用发票能作废吗
  • 汽车租赁属于有形动产融资租赁服务?
  • 开票项目与实际不符合
  • 财务报表信息的分类
  • 职工薪酬属于收益性支出
  • 员工工资需要交税吗
  • 企业存续情况
  • 实收资本一定要到账吗
  • 可供出售金融资产属于什么科目
  • 哪些情况可以开立基本账户
  • 银行转账凭证可以保留多久
  • 盖骑缝章的合同可以双面打印吗
  • 销售货物增值税税率变化
  • 政府会计双核算模式的好处
  • 在建工程进项税额抵扣最新通知
  • 发票报销有限制吗
  • 集团公司向下属发评先奖金合法吗
  • 暂估有几种处理方法
  • 本月多交的增值税
  • 企业为什么一定要给员工缴纳社保
  • 坏账准备的会计核算
  • 工作地变更社保卡怎么办
  • 年初速动比率怎么算
  • sql server 存储过程 超时
  • 数据库句柄是什么意思
  • amd furyx
  • 电脑总是关不了怎么办
  • linux计划任务怎么写
  • win8任务管理器打不开怎么办
  • Win10 Mobile RS1预览版14267.1004 修复Lumia 550充电问题
  • 探索世界怎么玩
  • window.open打开窗口设置背景色
  • python抓取软件界面数据
  • for语句的执行过程图解
  • Unity3D中的事件处理
  • django 表单
  • django modelform
  • django的url
  • python高级写法
  • 开票系统怎么设置默认税率
  • 房地产开发企业会计制度
  • 企业医院和事业医院的区别
  • 职工周转房需要缴纳房产税吗
  • 开票盘是什么意思
  • 财务年中工作总结简短
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设