日志:
日志分为,
在mysql,service层 binlog又称 归档日志,追加日志。
mysql引擎innodb专属日志,redolog,又称重做日志。
redolog:
1.mysql特有的日志
2.是物理日志,记录的是,在某个数据页上修改了什么
3.是循环写,空间固定,可以理解为一个转盘,会覆盖以前的日志记录。
binlog:
1.mysql service层日志,所有引擎都可以使用
2.逻辑日志,记录原始语句,例如给id=xx的一行中那个字段做什么操作。
3.是追加日志,写到一定大小后,会切换到下一个,不会覆盖以前的日志记录。
undo log
当启动一个一个事务是,对一条数据进行操作,例如id=1的数据进行操作,每次操作会产生一个undolog链接这个操作,
例如 update 表 set 字段=2 where id =1,此时会在原先的数据数据产生一条新的数据指向 id =1。