SQL AlwaysOn - 如果您不将其用作 cluster/failover 怎么办?

SQL AlwaysOn - What if you don't use it as a cluster/failover?

有人建议我使用两个 SQL 服务器,使用 AlwaysOn 作为一种复制形式。

主服务器接收所有数据,辅助服务器是报告源的只读服务器。

由于没有关于配置此类内容的信息,因此感觉提案不确定,有人知道这是好主意还是坏主意?

添加注意:没有集群或 AG 侦听器。服务器已分组,但可以直接访问和寻址。

启动 SQL Server 2017,无需集群或侦听器即可为您的场景提供解决方案。

不过有几点需要考虑:

  • AlwaysOn 在主服务器上启用 READ_COMMITED_SNAPSHOT 隔离级别。这意味着 TEMPDB 的开销和每行额外的 14 字节每行更改
  • 在异步模式的情况下,辅助服务器上的数据新近度可以接近主服务器。
  • 早于 SQL Server 2017 的版本需要 WSFC。

因此,与日志传送相比,AlwaysOn AG 可读辅助节点各有利弊:

  • 优点:
    • 不需要中断连接,因为不需要恢复日志
    • 数据可以具有近乎实时的新近度
  • 缺点:
    • 仅限企业版
    • 主副本上每个更改行的开销为 14 字节,因此考虑将填充因子从 100 更改为 90 以避免页面拆分开销
    • 更难维护

关于您的问题:

would anyone know if this is a good or terrible idea?

AG 可读辅助绝对值得 POC 试用,特别是如果您的公司需要 skillset/resources

(免责声明:此 post 是基于我个人的意见)