排序
如何通过binlog定位大事务?
1、序 大事务想必大家都遇到过,既然要对大事务进行拆分,第一步就是要找到它。那么如何通过binlog来定位到大事务呢? 首先,可通过binlog文件的大小来判断是否存在大事务,当一个binlog文件快...
分布式补偿事务(Saga)优缺点
Saga 是一种长事务的解决方案,它将一个大的分布式事务拆分成多个较小的本地事务,这些本地事务通过异步消息传递串联起来。 每个本地事务执行成功后,会发送消息触发下一个事务的执行。 如果某...
MVCC(多版本并发控制)是什么
我们需要了解两个知识: Read View 中四个字段作用; 聚簇索引记录中两个跟事务有关的隐藏列; 那 Read View 到底是个什么东西? Read View 有四个重要的字段: m_ids :指的是在创建 Read View...
数据库事务隔离级别又是如何实现的?
事务隔离级别的实现方式可以根据具体的数据库系统和存储引擎而有所不同。 1. 锁机制: 数据库系统可以使用锁来实现事务隔离级别。 通过在读取和修改数据时加锁,可以确保事务之间的隔离性。 不...
InnoDB的一次更新事务是怎么实现的?
InnoDB的一次更新事务涉及到多个组件和步骤,包括Buffer Pool、BinLog、UndoLog、RedoLog以及物理磁盘。 下面是一次完整的事务更新操作过程: 1. 加载数据到缓存中(Buffer Pool): 在进行数...
数据库系统中的事务隔离级别有哪些?
SQL-92 标准定义了 4 种隔离级别来解决脏读、幻读、不可重复读等这些异常情况,从高到底依次为: 可串行化(Serializable)、可重复读(Repeatable reads)、读已提交(Read committed)、读未提交(Re...
数据库redo log有什么作用,基本概念以及记录形式详解
为什么需要redo log 我们都知道,事务的四大特性里面有一个是持久性,具体来说就是只要事务提交成功,那么对数据库做的修改就被永久保存下来了,不可能因为任何原因再回到原来的状态。那么mysql...
数据库事物的特性有哪些
原子性 原子性要求事务是一个不可分割的操作单元,要么完全执行,要么完全不执行。 这意味着如果事务中的任何一部分操作失败,整个事务都会被回滚到初始状态,以保持数据的一致性。 原子性确保...