Questions tagged «merge-replication»

SQL Server中的一种复制类型,发布者和订阅者可以在其中进行自主工作,随后可以重新连接,同步和合并数据更改,以实现拓扑中所有节点之间的融合。合并复制通常用于服务器到客户端环境。

1
如何正确解决合并复制错误冲突
我们有SQL Server 2008 R2合并复制设置。 最近,我开始对某些表产生冲突,当我检查冲突查看器时,我可以看到赢者和输者列的值是相同的! 我确定这些数据只能由一个订户输入。 我曾经sp_showrowreplicainfo获得有关冲突行的更多详细信息,但我得到了2行:一行用于发布者,一行用于订阅者,两行的“版本”均为1。 我还实现了Brandon的方法:审核Merge Replication中的更改,但它仅显示正常的插入! 您能告诉我如何开始解决此类冲突吗?

1
将SQL Server 2005升级到SQL Server 2012
我有一个以下测试环境: 虚拟机(Hyper-V) Windows Server 2008 R2 SP1(x64位) Windows SQL Server 2005 Developer Edition SP4(x64位)(默认实例名称) 设置了1个具有合并复制的数据库... 3个发布,每个都有2个订阅者。 我们正在测试升级到SQL Server 2012 Developer Edition(sp1)的过程。 我已经下载了64位SQL Server 2012 Dev的iso。(sp1)来自MSDN(完整许可副本),并且已开始沿升级路径进行。在开始检查不同条件的最后阶段之一中,我们遇到了一个奇怪的问题,如下所述: Rule "Upgrade architecture mismatch" failed. The CPU architectures of upgrading feature(s) are different. To upgrade these features, Setup architecture must be the same as the …


1
带函数调用的估计查询计划与实际查询计划
我在SQL Server上有此查询,这是一个合并复制查询: SELECT DISTINCT b.tablenick, b.rowguid, c.generation, sys.fn_MSgeneration_downloadonly ( c.generation, c.tablenick ) FROM #belong b LEFT OUTER JOIN dbo.MSmerge_contents c ON c.tablenick = b.tablenick AND c.rowguid = b.rowguid; 估计的查询计划包括有关3个查询的信息: 上面的查询 函数调用fn_MSgeneration_downloadonly 对fn_MSArticle_has_downloadonly_property的函数调用 实际的查询计划仅包含以下信息: 上面的查询 与功能无关。为什么实际计划中缺少功能信息? 我尝试了以下选项: SET STATISTICS PROFILE ON SET STATISTICS XML ON 它创建了一个实际计划,但缺少第2部分和第3部分,与我在Management Studio中使用实际查询计划选项时相同。 例如,如果我要使用Profiler捕获有关函数调用的信息,我将选择哪些事件? 找不到与查询计划特别相关的答案,但我分析了SP:StmtStarting和SP:StmtCompleted并显示了函数调用。

3
合并复制文章计数的硬限制?
有点背景。我们开发了一个使用合并复制的应用程序。目前,我们目前正在发布约212条文章,并且一切都很好,因为它似乎已落在256条以内。(在服务器上使用SQL Standard 2005,在订户级别上使用2005 Express。) 我们正在开发一个新版本,并从头开始构建一个新数据库,该数据库的最低系统要求为SQL 2008 R2 Standard服务器端和客户端的Express 2008 R2。对已发表文章的相同256个计数限制。(是的,我们还将支持2012年,但限制是一样的) 问题出在哪里,我们已经在哪里成功测试了新版本中超过400篇文章的发布,并且所有功能都进行了功能测试(发布创建,快照和订阅者创建以及复制本身)。是否有其他人之前超过了计数限制,这仅仅是一个建议的软限制?在发布创建或订户创建期间,我们都没有看到任何错误。 根据这篇文章:http : //msdn.microsoft.com/zh-cn/library/ms143432%28v=sql.105%29 我正在等待Microsoft的回电,但我想知道是否有人以前在任何SQL版本中都看到过此消息。

3
PK作为ROWGUIDCOL还是使用单独的rowguid列?
这里正在进行一场激烈的辩论,所以我想听听其他意见。 我有很多带有uniqueidentifier集群PK的表。这是否是一个好主意在这里超出了范围(并且不会很快改变)。 现在,必须合并发布数据库,并且DEV提倡使用单独的rowguid列,而不是将现有PK标记为ROWGUIDCOL。 基本上,他们说应用程序永远不应将仅用于复制的内容带入其域(对于他们来说,这只是“ DBA内容”)。 从性能的角度来看,我没有理由为什么要添加一个新列来执行现有列可以做的事情。而且,由于它只是“ DBA的东西”,为什么不让DBA选择? 我有点理解DEV的观点,但是我仍然不同意。 有什么想法吗? 编辑:我只是想补充一点,在这场辩论中我是少数派,而质疑我立场的DEV是我尊敬和信任的人。这就是我诉诸意见的原因。 我可能还缺少一些东西,可能会误解了他们的观点。

3
BLOB合并复制期间的高tempdb磁盘I / O
拥有用于复制BLOB(类型image)的合并发布,就我的数据量而言,tempdb磁盘I / O很高。发布是仅下载的,没有筛选器。 高磁盘I / O是由同步引起的(当没有订阅者进行同步时,一切正常),这与订阅者数量密切相关。即使同步之间在Publisher上没有任何数据更改,也会发生这种情况,这使我感到困扰。 复制表的大小:7MB(总行数约为100) tempdb I / O:写入速度约为30 MB /秒(日志和数据文件) 订户数量:略多于100个,每个订户每30分钟同步一次(或多或少均匀)。 保留期限设置为14天 在发布服务器上使用SQL Server 2008,在订阅服务器上使用SQL Server 2005-2008R2。所有订户都使用Web同步。 此外,在订户处进行同步需要花费大量时间,并且多次发生replmerg.log以下情况: DatabaseReconciler, 2015/04/21 12:13:40.348, 3604, 25088, S2, INFO: [WEBSYNC_PROTOCOL] Sending client ReconcilerPhase WebSyncReconcilerPhase_RegularDownload DatabaseReconciler, 2015/04/21 12:13:47.063, 3604, 25194, S2, INFO: [WEBSYNC_PROTOCOL] Received server ReconcilerPhase WebSyncReconcilerPhase_LastRegularDownload 尝试@stream_blob_columns打开和关闭设置无效。 该问题是:这是个好主意,用合并复制到这些斑点发送到用户?我们还有其他出版物(尽管它们没有BLOB列),其中包含大量数据,而没有tempdb问题。是SQL Server缺陷还是安装错误? 发布服务器和分发服务器位于同一实例SQL Server …

2
SQL Server复制替代软件
我们使用SQL Server复制已有很长时间了,有时会遇到一些问题,有时我们需要重新初始化订阅才能解决某些问题,而其他时候则需要销毁整个复制结构并重新构建它! 我们主要担心的是,一旦遇到复制问题,几乎所有时候,简单的解决方案就是重新初始化复制,这对于我们的业务需求是不可接受的。 现在,我们正在准备发布一个新的大型项目,并且正在尝试寻找进行SQL Server复制的第三方软件。 我们的设置包括分布在分支机构(不同国家/地区)中的服务器+移动客户端(具有本地SQL Server数据库的便携式计算机),我们需要在所有这些服务器之间复制数据,并提供文章过滤功能。 有人可以为我们建议一些替代解决方案吗?

2
完整数据库备份后,SQL Server分发数据库日志文件无法控制地增长
我们有一个合并复制环境,该环境将推动8个订阅者。一切正常。我们的分发数据库是在简单恢复模式下设置的。我们有一个维护计划,该计划将每天00:30备份所有数据库。此过程完成后,分发日志文件将在接下来的30分钟内增长,并占用硬盘驱动器上的所有剩余空间(约90GB) 然后发生的情况是,分发数据库显示为“正在恢复”,直到重新启动计算机,我们才能做任何事情。之后,我可以将日志文件缩小到2MB。 我不知道为什么会这样。日志文件每天运行约10MB。数据库大小为15GB。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.