利用AFAIK、撤销日志和重做日志实现Mysql Innodb中的事务操作。但是,我很好奇,当不启用事务时,innodb是否会记录撤销日志重做日志?
发布于 2022-06-23 17:09:10
当您有autocommit=ON并且命令不在BEGIN...COMMIT中时,每个SQL都被认为是一个事务本身。把它看作是一个隐式BEGIN...COMMIT。
它的一个主要例子是一个正在改变数千行的大型UPDATE。对于隐式事务,即使在更改某些行后出现电源故障,在服务器恢复后也会导致ROLLBACK (隐式)。(没有这一点,该表将处于一个非常不可预测的状态。)
另一方面,TEMPORARY TABLE不需要酸保护。根据所使用的版本,新的优化可能避免为此类表编写撤消/重做日志。
https://stackoverflow.com/questions/72725057
复制相似问题