什么是事务复制用于?

时间:2012-04-10 09:46:09

标签: sql-server sql-server-2008

什么是使用的事务复制?我似乎按照本教程创建了事务复制:

http://www.sql-server-performance.com/2010/transactional-replication-2008-r2/

我知道当我更改某些对象,即任何DML或DDL语句时,这些更改将反映到我进行复制的其他服务器上。但我不清楚为什么要使用事务复制。当主实例失败时,SQL Server是否自动开始使用第二个服务器进行复制?或者我们是否必须在第一个实例失败的情况下从完成复制的服务器手动恢复数据库?

提前致谢:)

1 个答案:

答案 0 :(得分:7)

您可以使用事务复制来维护热备用SQL Server。事务复制将一台服务器(发布者)上的数据复制到另一台服务器(订阅者),延迟时间小于日志传送。

您可以在数据库对象级别(如表级别)实现事务复制。因此,Microsoft建议您在需要保护的数据较少时使用事务复制,并且必须具有快速数据恢复计划。

此解决方案容易受到发布者和订阅者同时失败的影响。在这种情况下,您无法保护您的数据。在所有其他情况下,例如分销商或订户的故障,最好将订户中的数据与发布者中的数据重新同步。

只有在未实现架构更改或未对数据库实施其他更改(例如复制不支持的安全更改)时,才应使用事务复制来维护热备用SQL Server。

注意复制不是为维护热备用服务器而设计的。通过复制,您可以在订户处使用复制数据来生成报告。您还可以将复制用于其他常规用途,而无需在相对繁忙的发布者上执行处理。

缺点

  1. 在。执行的架构更改或安全更改 建立复制后的发布者将无法访问 订户。事务复制中的分发服务器使用 打开数据库连接(ODBC)连接或OLE数据库 (OLEDB)连接以分发数据。但是,日志传送使用 RESTORE TRANSACTION低级Transact-SQL语句 分发事务日志。 RESTORE TRANSACTION语句是 比ODBC连接或OLEDB连接快得多。

  2. 通常,切换服务器会删除复制配置。 因此,您必须配置两次复制:
     一个。当您切换到订户时。
     湾当您切换回发布商时。

  3. 如果发生灾难,您必须手动切换服务器 将所有应用程序重定向到订户。

  4. 在此处阅读更多http://sqlserverdatarecovery.com/transactional_replication.html