【发布时间】:2014-10-02 10:42:24
【问题描述】:
好的,让我解释一下我们这里面临的环境:
我们有一个使用 SQL Server 数据库的 ASP.NET MVC 4 应用程序。
此应用将数据隔离在“项目”中,因此当任何用户连接到它时,只能处理其中一个项目的数据。
有时...一组用户必须前往偏远地区几天才能检索单个项目的数据,而且他们经常无法连接互联网(即使是移动或卫星解决方案也经常遥不可及)。
当被调职的团队从事一个项目时,办公室的人仍然可以从事其余的项目(但不能在国外的项目上工作)。
所以...我们正在考虑使用笔记本电脑充当“移动服务器”的可能性,用户可以在旅行前从特定项目下载数据。在国外,他们可以使用这个“移动服务器”,更新他们项目中的任何数据,当他们回来时,他们可以将更新的数据上传到主服务器。
我们的想法是在两个服务器(主服务器和移动服务器)上创建存储过程,执行不同的查询以更新它们之间的项目数据,并将项目标识符作为参数传递。可能是使用Linked servers 来让 main 和 mobile 在更新操作期间看到自己。
我们的问题是:
这是一个好的方法吗?
还有其他我们没有看到的更好的方法吗?
在这种方法或其他方法中我们应该注意哪些风险?
【问题讨论】:
-
Linked servers很好,很好 -
你可能想看看复制
-
@HLGEM 复制确实很有希望。我必须对此进行更多研究。有什么好的资源可以推荐给我吗?
-
我不是 dba,所以我从来没有设置过复制,我只知道它的存在以及它的作用。您可能会考虑您想询问的内容并在 dba 网站上询问
-
你可以从 MSDN 开始,这里有几个链接 msdn.microsoft.com/en-us/library/ms151198.aspx 和 msdn.microsoft.com/en-us/library/ms152531.aspx