其中bin log和undo log与事务操作息息相关,bin log也与事务操作有一定的关系,这三种日志,对理解MySQL中的事务操作有着重要的意义。...有啥用
1.用于复制,在主从复制中,从库利用主库上的binlog进行重播(执行日志中记录的修改逻辑),实现主从同步。
2.用于数据库的基于时间点的还原。...有啥用
1.提供crash-safe 能力(崩溃恢复),确保事务的持久性。
数据库突然崩溃,有些数据并未刷到数据文件中,当重启MySQL数据库,会从redolog中未刷到磁盘的数据刷到磁盘中。...有啥用
保存了事务发生之前的数据的一个版本,用于回滚,同时可以提供多版本并发控制下的读(MVCC),也即非锁定读
3种日志在事物执行过程中的工作
分别总结很难看出在sql执行过程中这3个日志是如何工作的...服务器空闲时,把redo log中的物理数据页刷到磁盘数据文件中
1.保证原子性:更新数据前,记录undo log,为保证在更新数据时发生异常导致更新失败,这时可以使用undo log对数据进行回滚(回滚内存中的数据