请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

innodb在快照读时,是如何知道要回溯几个版本呢

一条行记录中,会存在两个隐藏列

trx_id:每次一个事务对某条聚簇索引记录进行改动时,都会把该事务的 事务id 赋值给 trx_id 隐藏列 roll_pointer: 回滚指针,指向旧记录(undo log

这两个隐藏列都是单个值吗,而不是一个列表对吗?

如果存储的只是单个值的话,那么就很难推断出应该回溯几个版本吧

正在回答 回答被采纳积分+3

1回答

Moody 2023-03-03 11:26:20

其实不用精确知道回溯多少个版本,一直往前回溯到需要的版本就可以了

0 回复 有任何疑惑可以回复我~
  • 提问者 秋晨001 #1
    版本列表是放在undolog中的吗,也就是一条undolog上面不但有要执行的sql还有它所属的事务以及事务的状态
    回复 有任何疑惑可以回复我~ 2023-03-04 16:20:13
  • Moody 回复 提问者 秋晨001 #2
    是有所属事务的
    回复 有任何疑惑可以回复我~ 2023-03-11 02:13:28
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信