gpt4 book ai didi

sql-server-2008 - READ_COMMITTED_SNAPSHOT的优缺点

转载 作者:行者123 更新时间:2023-12-04 14:03:55 25 4
gpt4 key购买 nike

在SQL Server 2008中设置READ_COMMITTED_SNAPSHOT ON的利弊是什么?

实际上,我遇到了事务死锁的问题,但是通过设置READ_COMMITTED_SNAPSHOT ON并禁用了锁升级(仅在导致死锁的事务中使用的表上)。这样就解决了约90%的死锁问题。但我担心它可能还有其他一些问题,例如性能等。

任何帮助将不胜感激。

最佳答案

RCSI的优点:

  • 在查询启动时提供数据的一致 View
  • 没有阻止
  • 更少的锁/升级

  • 但是,这不是免费的。 tempdb用于保留所谓的“版本存储”。这可能意味着:
  • tempdb的空间和I/O需求增加,以维护
  • 版本
    如果长时间运行的事务需要长时间保留版本和/或如果存在许多版本,则
  • 可能会降低性能

  • 此外,行版本信息每行增加14个字节。

    RCSI的常见替代方法通常包括将写入事件与报告分开。可以使用各种HA技术(例如日志传送,镜像+快照或可用性组+ SQL Server 2012中的只读辅助副本)来完成此操作。

    一些官方文档引用:
  • Working with tempdb in SQL Server 2005
  • Choosing Row Versioning-based Isolation Levels
  • 关于sql-server-2008 - READ_COMMITTED_SNAPSHOT的优缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10875586/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com