【问题标题】:Log-Shipping: Why would you choose No Recovery mode?Log-Shipping:为什么要选择 No Recovery 模式?
【发布时间】:2013-01-21 21:48:27
【问题描述】:

在为 SQL Server 配置 LogShipping 时,您可以选择辅助数据库处于无恢复模式或待机模式。无恢复意味着在进行日志传送时您无法访问数据库。 Standby 为您提供只读访问权限,如果您选择在恢复即将发生时断开用户连接的选项,似乎不会干扰日志传送过程。这在我看来像是待机模式的一个额外好处,但据我所见,文档没有提到任何不利影响。

因此,我想知道为什么有人会选择使用无恢复模式?我能想到的唯一可能的原因是待机模式是否导致性能显着下降(但在文档中没有提到类似的事情),或者是否有一些安全要求来主动阻止任何人看到辅助数据库的内容(这似乎很少见/不太可能)。

谁能告诉我选择 No Recovery 模式的好处应该是什么?

【问题讨论】:

  • 我不明白为什么这被认为是题外话。链接到的常见问题解答包括标准“程序员常用的软件工具”。 Log-Shipping 是 SQL Server 的一部分,程序员肯定很常用,实际上搜索 StackOverflow 显示有关 LogShipping 的问题在这里被询问和回答。

标签: sql-server standby log-shipping


【解决方案1】:

当您使用NORECOVERY 模式时,不会授予目标数据库访问权限,因此数据库不必关心未提交的事务。日志可以“按原样”恢复并保持该状态。

当您使用STANDBY模式时,数据库恢复为NORECOVERY,然后分析并回滚日志中所有未提交的事务。然后它可以为用户提供只读访问权限。当下一个日志恢复时,数据库会断开所有用户的连接,并在恢复前再次将上一个日志中未提交的事务向前滚动。

如您所见,STANDBY 在恢复时可能有很大的额外开销,具体取决于您的事务量。

更多详情at this article at My World of SQL.

【讨论】:

    猜你喜欢
    • 2012-09-24
    • 1970-01-01
    • 2014-12-02
    • 1970-01-01
    • 1970-01-01
    • 2010-12-27
    • 1970-01-01
    • 1970-01-01
    • 2017-09-29
    相关资源
    最近更新 更多