使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

假设你使用 Publisher 在 Microsoft SQL Server 2012 或 SQL Server 2012 Service Pack 1 (SP1)上运行的合并复制。 将发布者升级到 SQL Server 2012 Service Pack 2 (SP2)后,无法重新启动合并代理。 此外,你会收到以下错误:

合并进程无法在数据库 "MergePub" 中执行基于保留的元数据清除。 如果此操作仍失败,请尝试增加此过程的查询超时时间,或尝试减少保留期。 进行故障排除时,请使用详细的历史日志记录来重启同步,并指定要写入的输出文件。

当你在发布服务器上手动执行 sp_mergemetadataretentioncleanup 存储过程时,存储过程将失败,并且你会收到以下错误:

消息206、级别16、状态2、过程 sp_mergemetadataretentioncleanup、行63Operand 类型冲突: bigint 与 uniqueidentifierMsg 206、Level 16、State 2、过程 sp_mergemetadataretentioncleanup、行65Operand 类型冲突: int 与 uniqueidentifier 不兼容

SQL Server 的每个新的累积更新均包含以前的累积更新中包含的所有修补程序和所有安全修补程序。 查看 SQL Server 的最新累积更新:

解决方法

若要解决此问题,请在已发布的数据库上执行以下查询:if exists (select * from sys.columns sc inner join sys.types st on sc.system_type_id = st.system_type_id where object_id = object_id('dbo.sysmergesubscriptions') and sc.name = 'last_local_recgen' and st.name = 'uniqueidentifier') begin alter table dbo.sysmergesubscriptions drop column last_local_recgen alter table dbo.sysmergesubscriptions add last_local_recgen bigint null end

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×