假设我有一个企业版数据库,它具有完全默认设置,只有普通的行存储表。没有 RCSI,没有快照隔离,也没有触发器。假设不需要行版本控制。
显然,这些假设意味着我不会为行版本控制支付额外的 14 字节/行成本。但是,可读 AG 次要副本在 SNAPSHOT 隔离下运行,而 SNAPSHOT 隔离需要行版本控制。因此,如果我将数据库放入可用性组并添加可读次要副本,我的数据库的哪些副本(如果有)将开始支付 14 字节/行的行版本控制成本?如果除了可读次要副本之外,我还有一个不可读次要副本,这种情况会改变吗?如果我进行故障转移并故障恢复会怎样?
之前链接的相关文档对此没有评论。我打算自己进行实验,但众所周知,AG 很容易出错,我不想得出错误的结论。
全部都是。
不,事实上任何内容的可读性都需要行版本控制。
然后您就成功测试了您的 HA 场景。