mysql原子性利用了undo log。
记录回滚的日志信息,利用undo log中的信息将数据回滚到修改之前。
mysql持久性的利用了redo log。
包括内存中的日志缓冲(redo log buffer),以及磁盘上的持久化文件(redo log file)。
事务提交时,必须先将所有事务日志写入到磁盘上的redo log file和undo log file中进行持久化。
mysql一致性的保证是从2个方面来保证。
一方面数据库层面A(原子性)、I(隔离性)、D(持久性)保证了一致性。另一方面符合约束的业务代码保证了一致性。