美文网首页mysql那些事儿
第九节、一条SQL更新语句的执行过程

第九节、一条SQL更新语句的执行过程

作者: 小母牛不生产奶 | 来源:发表于2018-12-23 15:56 被阅读9次

    前6节中说过,在一个表上有更新的时候,跟这个表有关的查询缓存会失效,所以执行一条update语句就会把表T上所有缓存结果都清空。这也就是我们一般不建议使用查询缓存的原因。

    接下来分析其会通过词法和语法解析知道这是一条更新语句。优化器决定要使用ID这个索引。然后,执行器负责具体执行,找到这一行,然后更新。

    与查询流程不一样的是,更新流程还涉及两个重要的日志模块:redo log(重做日志)和binlog(归档日志)。


    执行过程

    有了前八节的的概念性理解后,再来看执行器和InnoDB引擎在执行一个简单的update语句时的内部流程:update T set c=c+1 where ID=2;


    相关文章

      网友评论

        本文标题:第九节、一条SQL更新语句的执行过程

        本文链接:https://www.haomeiwen.com/subject/nfknkqtx.html