binlog 和 redo log 有什么区别?

  • 二进制日志(Binary Log)记录了与数据库相关的所有日志记录,包括 InnoDB、MyISAM等存储引擎的日志,而重做日志(Redo Log)只记录了InnoDB存储引擎的日志。
  • 记录内容不同,二进制日志记录了一个事务的具体操作内容,即逻辑日志。而重做日志记录了每个页(Page)的物理更改情况。
  • 写入时间不同,二进制日志仅在事务提交之前进行提交,即只写入磁盘一次。而在事务进行过程中,不断有重做日志条目被写入重做日志中。
  • 写入方式也不相同,重做日志是循环写入和擦除,而二进制日志是追加写入,不会覆盖已经写入的文件。

标签: java, Java面试题, MySQL, Java问题合集, MySQL面试题, Java编程, Java问题精选, Java常见问题