Closed. This question is off-topic。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是用于堆栈溢出的on-topic。
已关闭8年。
Improve this question
最近,Jeff遇到了与读取相关的数据库死锁的麻烦,因此有了posted。 Multiversion Concurrency Control (MVCC)声称可以解决此问题。它是什么,什么数据库支持它?
更新:这些都支持它(还有哪些?)
甲骨文 PostgreSQL 用户A开始事务,并在时间T1处更新具有某些值的1000行 用户B在时间T2读取相同的1000行。 用户A使用值Y(原始值X)更新行543 用户B到达行543,并发现自时间T1起事务正在运行。 数据库从日志中返回未修改的记录。返回的值是在小于或等于T2时提交的值。 如果无法从重做日志中检索记录,则表示数据库设置不正确。需要为日志分配更多空间。 这样就可以实现读取一致性。对于事务的开始时间,返回的结果始终相同。因此,在事务中可以实现读取一致性。
我试图用最简单的术语来解释...数据库中的多版本化有很多。
想改善这个问题吗? Update the question,所以它是用于堆栈溢出的on-topic。
已关闭8年。
Improve this question
最近,Jeff遇到了与读取相关的数据库死锁的麻烦,因此有了posted。 Multiversion Concurrency Control (MVCC)声称可以解决此问题。它是什么,什么数据库支持它?
更新:这些都支持它(还有哪些?)
最佳答案
从很长时间以来(至少从oracle 8.0起),Oracle就有了一个出色的多版本控制系统。
以下应该会有所帮助。
我试图用最简单的术语来解释...数据库中的多版本化有很多。
07-24 09:34