96SEO 2026-02-23 15:14 3
存储引擎层生成的日志实现了事务中的持久性主要用于掉电等故障恢复

实现多版本并发控制下的读MVCC的关键因素之一也即非锁定读MVCC通过Read
的时候仅仅是将数据从逻辑上恢复至事务之前的状态而不是从物理页面上操作实现的这一点是不同于redo
引擎对一条记录进行操作修改、删除、新增时要把回滚时需要的信息都记录到
在插入insert一条记录时要把这条记录的主键值记下来这样之后回滚时只需要把这个主键值对应的记录删掉delete就好了
在删除delete一条记录时要把这条记录中的内容都记下来这样之后回滚时再把由这些内容组成的记录插入insert到表中就好了
在更新一条记录时要把被更新的列的旧值记下来这样之后回滚时再把这些列更新为旧值就好了。
保证持久化。
产生undo日志的时候同样会伴随类似于保护事务持久化机制的redolog的产生。
确保事务的持久性。
为了防止断电导致数据丢失的问题当有一条记录需要更新的时候InnoDB
log的落盘并不是随着事务的提交才写入的而是在事务的执行过程中便开始写入redo
所以磁盘操作是顺序写而写入数据需要先找到写入位置然后才写到磁盘所以磁盘操作是随机写。
磁盘的「顺序写
Innodb_log_bufferInnodb_log_buffer
即使某个事务还没有提交Innodb存储引擎仍然每秒会将redo
这一点是必须要知道的因为这可以很好地解释再大的事务的提交commit的时间也是很短暂的。
用于复制在主从复制中从库利用主库上的binlog进行重放实现主从同步。
这些函数你在主库上执行的结果并不是你在从库执行的结果这种随时在变的函数会导致复制的数据不一致
ROW记录行数据最终被修改成什么样了这种格式的日志就不能称为逻辑日志了不会出现
注意不同的日志类型在主从复制下除了有动态函数的问题同样对对更新时间也有影响。
一般来说数据库中的update_time都会设置成ON
CURRENT_TIMESTAMP即自动更新时间戳列。
在主从复制下如果日志格式类型是STATEMENT由于记录的是sql语句在salve端是进行语句重放那么更新时间也是重放时的时间此时slave会有时间延迟的问题如果日志格式类型是ROW这是记录行数据最终被修改成什么样了这种从库的数据是与主服务器完全一致的。
事务提交的时候一次性将事务中的sql语句一个事物可能对应多个sql语句按照一定的格式记录到binlog中。
文件是记录了所有数据库表结构变更和表数据修改的日志不会记录查询类的操作比如
是追加写写满一个文件就创建一个新的文件继续写不会覆盖以前的日志保存的是全量的日志。
redo
是循环写日志空间大小是固定全部写满就从头开始保存未被刷入磁盘的脏页日志。
这个过程一般是异步的也就是主库上执行事务操作的线程不会等待复制
binlog再提交事务更新存储引擎中的数据事务提交完成后返回给客户端“操作成功”的响应。
在刷盘时机上与redolog不一样redolog即使事务没提交也可以每隔1秒就刷盘。
但是一个事务的
是不能被拆开的因此无论这个事务有多大比如有很多条语句也要保证一次性写入。
如果一个事务的
被拆开的时候在备库执行就会被当做多个事务分段自行这样就破坏了原子性是有问题的。
0也就是不做任何强制性的磁盘刷新指令这时候的性能是最好的但是风险也是最大的。
因为一旦主机发生异常重启还没持久化到磁盘的数据就会丢失。
binlog而已经持久化到磁盘的数据就不会有影响不过就是对写入性能影响太大。
都要持久化到磁盘但是这两个是独立的逻辑可能出现半成功的状态这样就造成两份日志之间的逻辑不一致。
如下
log恢复数据但是这个时候binlog并没有记录该数据后续进行机器备份的时候就会丢失这一条数据同时主从同步也会丢失这一条数据。
个阶段分别是「准备Prepare阶段」和「提交Commit阶段」
持久化到磁盘innodb_flush_log_at_trx_commit
当优化器分析出成本最小的执行计划后执行器就按照执行计划开始进行更新操作。
检查是否已经是要更新的值。
执行器得到聚簇索引记录后会看一下更新前的记录和更新后的记录是否一样如果一样的话就不进行后续更新流程如果不一样的话就把更新前的记录和更新后的记录都当作参数传给
log因为这是更新操作需要把被更新的列的旧值记下来也就是要生成一条
里面这个时候更新就算完成了。
为了减少磁盘I/O不会立即将脏页写入磁盘后续由后台线程选择一个合适的时机将脏页写入到磁盘。
这就是
记录binlog在一条更新语句执行完成后然后开始记录该语句对应的
原文链接https://www.cnblogs.com/seven97-top/p/18545057
JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback