mysql执行一个select语句的过程大概是连接 --》权限校验-->查询缓存-->分析器-->执行器-->引擎
而update过程和select过程稍有不同,update会删除查询缓存。
首先会从磁盘上加载出对应id的行记录,然后记录redo日志 ,此时为prepare阶段,然后会记录binlog日志,然后再次提交redo日志,此时redo日志为commited阶段,注意此时的更新只是发生在内存里,等空闲时,再刷回磁盘。
mysql执行一个select语句的过程大概是连接 --》权限校验-->查询缓存-->分析器-->执行器-->引擎
而update过程和select过程稍有不同,update会删除查询缓存。
首先会从磁盘上加载出对应id的行记录,然后记录redo日志 ,此时为prepare阶段,然后会记录binlog日志,然后再次提交redo日志,此时redo日志为commited阶段,注意此时的更新只是发生在内存里,等空闲时,再刷回磁盘。