Lev*_*sen 7 sql-server data-synchronization sql-server-2014
首先,如果这是重复的,我很抱歉。我找不到解决这个特定问题的人,或者我在阅读时可能没有意识到这一点。很可能我使用了错误的搜索短语,因为我对术语并不十分熟悉。
我们有3台服务器:
一个。SQL服务器
乙。警报系统
Ç。网站+API+其他
服务器B和C必须一直连接到服务器A,并且出现了几次宕机的情况,导致了很多客户的不满。
我们想要以下内容:(不同的字母使评论更容易,尽管可能不是 :p )
w ^。报警系统(带 SQL 服务器)
十。网站 + API(带 SQL 服务器)
是。网站+ API(带 SQL 服务器)
Z。其他(使用 SQL 服务器)
编辑: X和Y在技术上是相同的,但X通常会托管网站,而我们的应用程序和 3rd 方解决方案通常会连接到服务器Y上的 API ,以确保仅通过一个渠道感觉到故障。如果X崩溃,那么Y将同时为网站和 API 提供服务,直到X重新上线,反之亦然。
同步 SQL 服务器至关重要。如果客户端通过网站(服务器X)对数据库进行更改,然后激活警报系统W(更改很重要),那么它必须已经同步。
每个系统只使用部分数据库和表,为了节省资源,我们只能立即同步重要数据,每隔几个小时左右就可以同步其余数据。 编辑:不是一个选项
我们将在所有服务器上使用SQL Server 2014(除非有人说服我)
更新:
我们一直在与一家过去帮助我们设置服务器并获得正确版本和许可证的公司取得联系。他们的建议如下:
这样,每个服务器都可以独立工作,并且可以访问其他服务器上所做的任何更改。
我不太确定如何检测行的删除,除了运行并查看丢失的内容,除非TRIGGERS在复制表中后同步工作?
编辑:我的另一个问题是在不同的服务器上的同一个表中插入了一些东西,而复制由于网络问题或其他原因而停止时会发生什么。然后我们将有2 行具有相同的 ID,我们没有理由假设后者不是前者的编辑(除了 ID 仅在 4 个服务器中的 2 个中,但它很可能如果网络长时间关闭,则全部为 4)
这些问题都可以通过为创建日期、上次编辑日期、插入 ID和全局 ID添加更多列来解决。但是,我们必须在我们的网站和其他系统上进行大量更改,因此我们宁愿避免它。
看来您可以在服务器之间和您需要的对象上使用合并复制,您可以使复制每 1 分钟同步一次,因此每个更改都将在不到一分钟的时间内交付。(不是实时的,但是非常高效)它可以同步表以外的对象,如果你没有非常复杂的数据库设计,它不需要太多维护。您甚至可以在不同数据库中同时对同一记录进行更新,合并复制它具有冲突解决机制,如果可能的话,根据您定义的优先级在您的业务中解决任何冲突。由于更改是收集然后同步的,因此即使服务器出现故障,其他服务器也将正常工作并捕获更改,并且当服务器恢复时,所有内容都将同步。
| 归档时间: |
|
| 查看次数: |
3547 次 |
| 最近记录: |