【发布时间】:2014-04-09 09:03:06
【问题描述】:
我面临 SQL Server 复制问题 (订阅服务器的合并复制中的身份管理)。
复制情况:
- 发行商和发行商位于一台运行 Windows Server 2012 Std 和 SQL Server 2012 Std 的服务器中
- 一台运行 Windows 7 Professional 和 SQL Server 2012 Express Edition 的用户 PC
- 两者都使用 VPN 通过互联网连接
问题:
订阅者有一篇文章(表)[DocumentItems],其中其标识字段 [DocumentItemsID] 由 Replication 管理并分配了以下范围:
([DocumentItemsID]>(280649) AND [DocumentItemsID]<=(290649) OR [DocumentItemsID]>(290649) AND DocumentItemsID]<=(300649)
服务器多次断电。 每次订阅者 PC 启动时,[DocumentItemsID] 字段都会在插入新行时从其范围内选择一个标识,例如 330035。
问题发生了 3 次。 我通过手动补种解决了这个问题:
DBCC CHECKIDENT('DocumentItems' , RESEED, xxxx)
其中 xxxx 是 [DocumentItemsID] + 1 的最大现有值
一旦再次断电,就会出现同样的问题。
有人知道发生了什么吗? 以及为什么 [DocumentItemsID] 字段的值超出其范围?
谢谢
【问题讨论】:
标签: sql sql-server replication