MySQL的MVCC是利用UNDO和Read View来实现的,数据的历史版本是存放在UNDO中的,通过构建Read View来判断数据版本的可见性。TiDB没有UNDO(WAL也只是为了实现灾难恢复,和MVCC无关,类似于redo),它是将所有数据的历史版本都存下来,通过将数据历史版本的commit_ts与当前事务的start_ts进行比较来判断数据的可见性
MySQL的MVCC是利用UNDO和Read View来实现的,数据的历史版本是存放在UNDO中的,通过构建Read View来判断数据版本的可见性。TiDB没有UNDO(WAL也只是为了实现灾难恢复,和MVCC无关,类似于redo),它是将所有数据的历史版本都存下来,通过将数据历史版本的commit_ts与当前事务的start_ts进行比较来判断数据的可见性