在SQL Server上镜像大型生产数据库

时间:2018-11-19 15:08:39

标签: sql-server

假设,我拥有一家运行SQL Server的公司。服务器上的数据库(DB1)中存储了大量数据,客户在内部(出于报告目的)和外部都在查询这些数据,并且由于服务器流量而导致许多运行缓慢问题。我的问题是,(准确地)镜像DB1并将其命名为DB1b,以便内部报告可以查询DB1,而我的客户可以查询DB1b,这是一个错误还是一个好主意?谢谢。

1 个答案:

答案 0 :(得分:1)

从理论上讲,您的公司将具有AlwaysOn配置,以防止停机和数据丢失,这些停机和数据丢失可以实时同步而基本没有延迟。

假设,执行只读操作的内部人员可以查询可用性组中的辅助节点,而正在执行读/写操作的应用程序/外部客户将连接到您的主节点。如果每个人都在读书而没有人在写作,那么您可以站起来其他辅助节点。或者只是花钱买更多的处理能力/ RAM /内核。

此外,假设地,您的查询可能是垃圾,无法进行优化。一旦对它们进行了覆盖索引调优,放入proc等中,这将减少等待/读取/等。

从理论上讲,这将减少流量。总体而言,这篇文章内容过于广泛,以至于在不了解更多信息的情况下无法真正回答。