登录
首页 >  数据库 >  MySQL

mysql 数据库四种事务隔离级别

来源:SegmentFault

时间:2023-01-21 15:41:37 500浏览 收藏

在数据库实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《mysql 数据库四种事务隔离级别》,聊聊MySQL,希望可以帮助到正在努力赚钱的你。

熟悉 mysql 数据库四种事务隔离级别:

查询mysql中事务隔离级别

SELECT @@tx_isolation;

clipboard.png

read uncommitted(RU)读未提交:

一个事务中,可以读取到其他事务未提交的变更

read committed(RC)读已提交:

一个事务中,可以读取到其他事务已经提交的变更

repetable read,(RR)可重复读:

一个事务中,直到事务结束前,都可以反复读取到事务刚开始看到的数据,不会发生变化
mysql的默认隔离级别是RR
RR和RC的区别是在一个事务中RR隔离级别的读到一张表的数据都是一样

事务A 事务B
begin;
select * from a
insert into a(...)
select * from a

RR隔离级别下:事务A二次select查询的结果是一样的,看不到事务B中插入的数据
RC隔离级别下:事务A第二次select查询是可以看到事务B中插入的数据

serializable(串行读):

即便每次读都需要获得表级共享锁,每次写都加表级排它锁,两个会话间读写会相互阻塞。

文中关于mysql的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《mysql 数据库四种事务隔离级别》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表