今天学了第15讲,MySQL WAL技术:执行事务,写完内存和日志,事务就算完成。先(循环)写日志redolog(崩溃恢复靠他),再(追加)写磁盘binlog。
两阶段提交问题
redolog A binglog B
A崩溃:事务回滚
B崩溃:查看redolog,已commit则提交;只prepare则判断binlog是否存在相应的事务&& 事务完整。
- binlog完整性校验:checksum
- binlog与redolog关联:XID
例子
例子1
给like表加字段relation_ship
思考题
应该是1,做了修改就成脏页了,还要等着写回,很麻烦。