【面试题精讲】mysql-redolog和binlog区别

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top

首发博客地址

全网最细面试题手册,支持艾宾浩斯记忆法


特性 redo log binlog
记录的内容 数据库的物理操作 数据库的逻辑操作
记录的位置 存储在磁盘上的 redo log 文件 存储在磁盘上的 binlog 文件
记录的时机 在事务提交时记录 在语句执行时记录
记录的方式 循环写入方式 追加写入方式
记录的作用 用于恢复数据库 用于复制和恢复数据库

redo logbinlog 是 MySQL 数据库中的两种日志文件,它们都可以用于恢复数据库。但是它们记录的内容、位置、时机、方式和作用都有所不同。

redo log 记录的是数据库的物理操作,比如页的修改等。它的记录方式是循环写入方式,即当 redo log 文件写满时,会从文件头重新开始写入,覆盖最早的记录。redo log 文件存储在磁盘上,用于恢复数据库。

binlog 记录的是数据库的逻辑操作,比如 SQL 语句的执行等。它的记录方式是追加写入方式,即每次写入新的日志都会追加在文件末尾。binlog 文件存储在磁盘上,主要用于复制和恢复数据库。

在记录的时机上,redo log 是在事务提交时记录,而 binlog 是在语句执行时记录。

在记录的作用上,redo log 主要用于恢复数据库,而 binlog 主要用于复制和恢复数据库。

综上所述,redo log 和 binlog 在记录的内容、位置、时机、方式和作用上都有所不同,开发者应该根据实际需求选择合适的日志文件来完成相应的操作。

本文由mdnice多平台发布

相关推荐
间彧1 天前
Kubernetes的Pod与Docker Compose中的服务在概念上有何异同?
后端
间彧1 天前
从开发到生产,如何将Docker Compose项目平滑迁移到Kubernetes?
后端
间彧1 天前
如何结合CI/CD流水线自动选择正确的Docker Compose配置?
后端
间彧1 天前
在多环境(开发、测试、生产)下,如何管理不同的Docker Compose配置?
后端
间彧1 天前
如何为Docker Compose中的服务配置健康检查,确保服务真正可用?
后端
间彧1 天前
Docker Compose和Kubernetes在编排服务时有哪些核心区别?
后端
间彧1 天前
如何在实际项目中集成Arthas Tunnel Server实现Kubernetes集群的远程诊断?
后端
brzhang1 天前
读懂 MiniMax Agent 的设计逻辑,然后我复刻了一个MiniMax Agent
前端·后端·架构
草明1 天前
Go 的 IO 多路复用
开发语言·后端·golang
蓝-萧1 天前
Plugin ‘mysql_native_password‘ is not loaded`
java·后端