SQL Server Always On 或镜像和日志传送

Oll*_*lie 4 sql-server mirroring high-availability log-shipping availability-groups

我们有两个数据中心,它们之间的 ping 时间为 2 ms,通过站点到站点 VPN 连接。在主数据中心,我们有 2 台服务器,在辅助数据中心,我们有一个数据库服务器。所有服务器的规格和配置都相同,运行 Windows 2012 R2,我们有两个 SQL Server 2016 Enterprise 许可证。一种用于主站点 + 故障转移,一种用于辅助站点。

问题是我们应该使用什么技术?始终在可用性组上,在主数据中心的两个节点之间进行同步复制并异步复制到辅助数据中心。另一种选择是在主数据中心使用镜像,然后将日志传送到辅助数据中心。唯一需要注意的是,我们需要使用透明数据加密 (TDE),因此需要使用企业许可证。

我们的运维团队目前有 2 人并且在不断增长,但还没有完全分配 DBA,我知道如何设置这两种技术,但只在生产中使用过镜像和日志传送。

人们会推荐什么,always on 看起来很棒,但我读过一些文章说你需要大量的 DBA 资源来照顾它,而镜像和日志传送要容易得多。

SQL*_*joe 5

如果您在说镜像(而不是 SAN 镜像)时指的是数据库镜像,那么就不要。它自 2012 年以来已被弃用,因此它是未来版本中完全删除的潜在候选者。

使用 Always On 可用性组。DBA 开销的差异应该大致相同。恕我直言,不同的是学习曲线。日志传送非常容易学习、实施和操作。这主要是因为它最初是由 MSIT DBA(几十年前)创建的,作为一个简单、灵活的 DR 解决方案,随后被产品化。DB Mirroring 应用了相同的概念,并进行了一些强大的增强(例如,传送块而不是备份提供了相当大的性能提升)。

Always On AG 扩展了这些概念,但添加了用户现在需要学习使用和管理的依赖项(例如 WSFC)。这不是火箭科学,但如果你还不熟悉它们,可能需要一些努力。然而,一旦你弄清楚了,好处是非常显着的(分组资源、可读的辅助、更高的传输性能都是最重要的)。