SQL Server 2005单向复制

时间:2008-09-04 11:21:41

标签: sql-server replication

在我工作的业务中,我们讨论的方法是减少主数据库的读取负载。

建议的一个选项是从主数据库到从数据库进行实时单向复制。然后,应用程序将从从属数据库中读取并直接写入主数据库。所以......

  • 应用程序从Slave读取
  • 应用程序写入主要
  • 主要更新奴隶自动

这种方法的主要优点和缺点是什么?

2 个答案:

答案 0 :(得分:2)

一些缺点:

  • 2点失败
  • 应用程序逻辑必须考虑写入内容然后读取内容之间的延迟,因为它不会立即从辅助数据库中获取

我使用的策略是每晚将关键报告数据发送到辅助数据库,在途中对其进行反规范化,以便可以在该数据库上运行强大的查询,而不是锁定表并从OLTP服务器窃取资源。我没有使用任何正式的数据仓库或复制工具,而是在没有最新数据的情况下确定问题查询,并在辅助服务器上专门为这些查询创建数据结构。

“复制一切”方法肯定有利可图:

  • 您可以在辅助设备上运行任何即席查询,因为它具有您的所有数据
  • 如果您的主服务器已停止,您可以快速重新启用辅助服务器以接管

答案 1 :(得分:1)

我们正在使用单向复制,但不是来自同一个应用程序。我们的应用程序正在读写主数据库,数据被同步到replca数据库,报告工具正在使用此副本。

我们不希望我们的应用程序从其他数据库读取,因此在这种情况下,我建议在master数据库上使用文件组和分区。使用文件组(特别是在不同的驱动器上)以及文件和索引的分区可以大大提高性能。