对数据库 ACID中的一致性Consistency的理解

探讨了InnoDB双写缓冲区技术,这是一种确保数据一致性的机制,即使在系统崩溃的情况下也能保护数据。通过先将数据写入双写缓冲区,再写入数据文件,InnoDB能够提供更强大的崩溃恢复能力。

查看mysql官方文档:

Consistency:

The consistency aspect of the ACID model mainly involves internal InnoDB processing to protect data from crashes. Related MySQL features include:

翻译过来就是:

一致性:
ACID模型的一致性方面主要涉及内部InnoDB处理以保护数据免于崩溃。 相关的MySQL功能包括:

InnoDB双写缓冲区。

InnoDB崩溃恢复

 

针对这个InnoDB双写缓冲区:

双写缓冲区
InnoDB使用名为doublewrite的文件刷新技术。 在将页面写入数据文件之前,InnoDB首先将它们写入称为doublewrite缓冲区的连续区域。 只有在完成对doublewrite缓冲区的写入和刷新之后,InnoDB才会将页面写入数据文件中的正确位置。 如果在页面写入过程中存在操作系统,存储子系统或mysqld进程崩溃,InnoDB稍后可以在崩溃恢复期间从doublewrite缓冲区中找到该页面的良好副本。

虽然数据总是写入两次,但双写缓冲区不需要两倍的I / O开销或两倍的I / O操作。 数据作为一个大的顺序块写入缓冲区本身,对操作系统进行单个fsync()调用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值