Mysql InnoDB 事务的那些事儿

本文深入探讨了Mysql InnoDB事务的同步过程,特别是重做日志Redo.log的机制。介绍了LSN、Checkpoint的概念及其触发机制,强调了数据恢复的重要性。事务日志通过批量同步提高效率,而checkpoint策略确保数据一致性。在恢复过程中,仅需处理从最近的checkpoint开始的日志部分。
摘要由CSDN通过智能技术生成

Mysql InnoDB 事务的那些事儿

这里将为大家介绍数据库和日志是怎样将内存与磁盘的数据进行同步的!
并且说明数据库怎样进行数据恢复

Innodb使用日志来减小内存与磁盘之间同步的巨大开销,通过单独的日志线程,批量的同步日志缓存中的日志到磁盘,这样写入的文件更加的顺序,效率会更高。
数据库内存与磁盘的同步
日志文件可配置的参数:
innodb_log_files_in_group:代表几组日志,默认为2.
innodb_log_file_size: 代表日志ib_logfile的大小,范围为5mb~4Gb,所有日志文件大小加起来不能超过4Gb,如果设置的日志文件过大,I/O磁盘的次数会减少,checkpoint会变少,但数据恢复时的工作量会过大,如果过小,会导致checkpoint过多,造成更多的写操作。

更改日志文件配置需删除旧日志文件,或移动到其他位置,重启后才能成功!

同步过程:

当你改写数据库任何数据的时候,都会将操作记录写入日志缓存中,当日志缓存满时,或者事务提交时,或者每一秒钟,这三个条件都有可能会触发日志的同步 (如下图)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值