修复:"未能生成动态快照"当您在 SQL Server 中调用 sp_MScreatemergedynamicsnapshot

错误 #: 202552 (内容维护) VSTS:2130497

症状

假定您具有 Microsoft SQL Server 2008年服务包 3 (SP3),SQL Server 2008 R2 Service Pack 2 (SP2),SQL Server 2012 Service Pack 2 (SP2),SQL Server 2012年服务包 1(SP1),或在一台计算机上安装 SQL Server 2014年。当调用sp_MScreatemergedynamicsnapshot存储过程来创建动态快照时,您会收到以下错误消息︰

Msg 8115,级别 16 状态 2,过程 sp_MScreatemergedynamicsnapshot 线 182
将表达式转换为数据类型 nvarchar 算术溢出错误。

Msg 20655、 级别 16、 状态 1、 过程 sp_MScreatemergedynamicsnapshot,行 186
该分区的快照进程无法完成。无法从分发数据库中的 MSsnapshot_history 表中检索的最大时间戳信息。确保标准快照处于最新状态并可用。

Msg 20628、 级别 16、 状态 1、 过程 sp_MScreatemergedynamicsnapshot,行 203
未能生成动态快照。


注意:Agent_id值超过 99999 MSdynamicsnapshotjobs表中的时,会出现此问题。

原因

在 SQL Server 中的缺陷会出现此问题。Agent_id的本地变量的类型是一个字符,并且其长度为 5。当 SQL Server 处理分配给INT类型的值,则可能会出现算术溢出。

解决方案

第一次修复该问题的SQL Server累积更新包

对于 SQL Server 2014年累积更新 3/en-us/help/2984923

SQL Server 2012 sp1 的累积更新 11/en-us/help/2975396

SQL Server 2012 sp2 的累积更新 1/en-us/help/2976982

SQL Server 2008 R2 sp2 的累积更新 13/en-us/help/2967540

SQL Server 2008 sp3 的累积更新 17/en-us/help/2958696

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


修补程序信息
受支持的修补程序现已从 Microsoft 推出。但是,它旨在纠正本文介绍的问题。它仅应用于正经历此特定问题的系统。

若要解决此问题,请联系 Microsoft 客户支持服务以获取此修复程序。有关 Microsoft 客户支持服务的电话号码和有关支持费用的信息的完整列表,请访问下面的 Microsoft 网站︰

http://support.microsoft.com/contactus/?ws=support注意: 在特殊情况下,如果 Microsoft 支持专业人员确定某个特定的更新能够解决您的问题,可能取消的通常情况下收取的电话支持服务费用。照常收取支持费用将应用于其他支持问题和对于特定更新无法解决的问题。

状态

Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。

Author:harvch;
作者︰ v-shysun
技术审阅︰ PDELIOT; deant; jeanyd; harvch;sqlprev
编辑器︰ v-emy

需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

谢谢您的反馈意见!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×