前言 前面我们讲了MySQL数据库底层的数据结构与算法、MySQL性能优化篇一些内容。我们再来聊聊MySQL的锁与事务隔离级别,分上下两篇,本篇重点讲MySQL的行锁与事务隔离级别。 锁定义 锁是计算机协调多个进程或线程并发访问某一资源的机制。 在数据库中,除了传统的计算资源(如CPU、RAM、I/ ...
分类:
数据库 时间:
2020-12-15 12:27:46
阅读次数:
4
背景: 工作上需要删除或则归档一张大表,这时候用pt-archiver可以很好的满足要求,其不仅可以归档数据,还有删除、导出到文件等功能。并且在主从架构当中,可以兼顾从库(一个或则多个)进行归档,避免归档、删除数据时候压力太大,造成从库的延迟。该工具的目标是一个低影响,从表中剔除旧数据,而不会影响O ...
分类:
其他好文 时间:
2020-12-09 12:33:51
阅读次数:
13
1.读未提交 :脏读又称无效数据读出。一个事务读取另外一个事务还没有提交的数据叫脏读。 例如:事务T1修改了一行数据,但是还没有提交,这时候事务T2读取了被事务T1修改后的数据,之后事务T1因为某种原因Rollback了,那么事务T2读取的数据就是脏的。 2.读已提交 :不可重复读是指在同一个事务内 ...
分类:
其他好文 时间:
2020-12-03 12:00:16
阅读次数:
5
spring事物中的传播及隔离▼关注测试局|会上瘾关于@Transactional注解:添加事务注解1、使用propagation指定事务的传播行为,即当前的事务方法被另外一个事务方法调用时。如何使用事务,默认取值为REQUIRED,即使用调用方法的事务REQUIRES_NEW:事务自己的事务,调用的事务方法的事务被挂起。2、使用isolation指定事务的隔离级别,最常用的取值为READ_COM
分类:
编程语言 时间:
2020-11-27 11:54:34
阅读次数:
26
多个线程开启各自事务操作数据库中数据时,数据库系统要负责隔离操作,以保证各个线程在获取数据时的准确性。 数据库共定义了四种隔离级别: Serializable:可避免脏读、不可重复读、虚读情况的发生。(串行化) Repeatable read:可避免脏读、不可重复读情况的发生。(可重复读) Read ...
分类:
数据库 时间:
2020-11-21 12:08:08
阅读次数:
12
事务ACID特性,其中I代表隔离性(Isolation)。什么是事务的隔离性?隔离性是指,多个用户的并发事务访问同一个数据库时,一个用户的事务不应该被其他用户的事务干扰,多个并发事务之间要相互隔离。一个事务怎么会干扰其他事务呢?咱们举例子来说明,假设有InnoDB表:t(idPK,name);表中有三条记录:1,shenjian2,zhangsan3,lisicase1事务A,先执行,处于未提交的
分类:
数据库 时间:
2020-11-17 12:05:39
阅读次数:
10
《挖坑,InnoDB的七种锁》初步说明了InnoDB中,会使用七种不同类型的锁,今天就介绍其中的第一种,自增锁(Auto-incLocks)。一,案例说明MySQL,InnoDB,默认的隔离级别(RR),假设有数据表:t(idAUTO_INCREMENT,name);数据表中有数据:1,shenjian2,zhangsan3,lisi事务A先执行,还未提交:insertintot(name)val
分类:
数据库 时间:
2020-11-17 12:03:43
阅读次数:
13
Case1MySQL,InnoDB,默认的隔离级别(RR),假设有数据表:t(idPK,name);数据表中有数据:10,shenjian20,zhangsan30,lisi事务A先执行,还未提交:insertintotvalues(11,xxx);事务B后执行:insertintotvalues(12,ooo);问:事务B会不会被阻塞?Case2MySQL,InnoDB,默认的隔离级别(RR),
分类:
数据库 时间:
2020-11-17 12:03:25
阅读次数:
13
《InnoDB,5项最佳实践,知其所以然?》发布后,不少同学留言希望讲讲MySQL的InnoDB行锁机制。要细聊MySQL的行锁,难以避免的要从事务的四种隔离级别说起。四种隔离级别,又脱不开聊读脏,不可重复读,读幻象等问题。事务隔离级别,行锁机制等都比较垂直,应用开发中大部分同学都用不到,不确定是否大部分朋友都感兴趣。今天,先抛出一个问题,如果大家确定对这类话题感兴趣的话,后续我花时间细聊这一系列
分类:
数据库 时间:
2020-11-17 12:02:33
阅读次数:
10
Redis事务本质:一组命令的集合!一个事务中的所有命令都会被序列化,在事务执行过程的中,会按照顺序执行! 一次性,顺序性,排他性!执行一系列的命令! 队列 set set set 执行 Redis事务没有隔离级别的概念! 所有的命令在事务中,并没有直接被执行!只有发起执行命令的时候才会执行! Ex ...
分类:
其他好文 时间:
2020-11-11 15:52:00
阅读次数:
9