MySQL-binlog、redolog和undolog的区别区别: 1、binlog是mysql server层面的,用与数据备份和主从复制,每个执行引擎都有这个文件,比如Myisam和InnoDb 2、redoLog是InnoDb引擎特有的(实现了持久性),用于数据update,先将数据更新在内存,然后写入redolog,在空闲的时候写入磁盘 3、undlog也是InnoDb引擎特有的(实现了原子性),保存着更新前的语句,用于sql语句的回滚,MVCC用到了undolog,当读取的行被其他事务锁定时,可以从undolog找出该行记录之前的数据是什么,从而提供版本