SQL Server 2012 Service Pack 2 中所修复的 bug

错误 #: 203872 (内容维护)

简介

本文列出了 Microsoft SQL Server 2012 Service Pack 2 (SP2) 修复的 bug。

Notes

  • 其他未在此处介绍的修复程序也可能包含在该 service pack 中。

  • 此列表将在更多文章发布时更新。

有关如何获取 SQL Server 2012年的服务包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章︰

2755533如何获取最新的 service pack 的 SQL Server 2012注意:有关哪些下载应从列表中选择可用的下载的详细信息,请检查发行说明此处

详细信息

SQL Server 2012年服务包累积更新和升级到 SP2 的所有版本,应用程序和 SQL Server 2012年的服务级别。除了本文中列出的修复程序,此服务包还包含等于并包括Microsoft SQL Server 2012 SP1 累积更新 9 (CU9)

有关累积更新包可用于 SQL Server 2012 SP1 的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章︰

SQL Server 2012年生成 SQL Server 2012 Service Pack 1 发布后发布的2772858

此服务包中修复的问题

有关 SQL Server 2012 SP2 中修复的错误的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章。

VSTS bug 数

知识库文章编号

说明

1374617

2028830

修复︰ 共享的组件时被安装在错误的位置实现一个 SQL Server 2008年或 SQL Server 2012年故障转移群集的安装

1703014

2963382

修复︰ 无法连接到服务器,当您运行 SSA 2012 中的多维数据集创建 MDX 查询

2011247

2927741

修复︰ 图像未正确显示在该网页中 SSRS 2012 报表上使用钻取操作时

2034994

2963383

修复︰ 文本被截断时使用 HPB 呈现器 SSRS 2012 中查看报告

1769469

2963384

修复︰ SQL Server 时崩溃,tempdb 数据库日志文件则完全是在 SQL Server 2012

1973168

2963386

修复︰ SSRS 2012 将失败,并 IsolatedStorageException 导出到 Excel 工作表的预订时大于 10 MB

1973196

2963388

修复︰ SSRS 2012 不能导出大于 10 MB 到 Excel 格式的报表

787358

2963404

修复︰ 回滚会导致数据库去怀疑 SQL Server 2012年中的模式

1043717

2806979

当您对 SQL Server 2012年中 RCSI 启用数据库的表中运行查询时修复︰ 差性能

1178585

2963412

在 SQL Server 2012 SP2 新 DMF sys.dm_fts_index_keywords_position_by_document

1182241

2966520

修复︰ 在重新启动报告 Windows 服务 SSRS 2012 年 1 月 1 日时,未创建新的日志文件

1240848

2966519

修复︰ 没有错误消息日志备份 SQL Server 2012年中失败时

1253861

2936004

修复︰ Visual Studio 2012 崩溃由于访问冲突而在报表查看器 2012 UI 在本地模式下完成数据源绑定后

1262029

2966522

修复︰ 文件共享订阅不填充 SSRS 2012 中的说明列

1481773

2966523

修复:"名称"下拉列表为空时指定一个 SSRS 2012 报告

1419367

2964762

修复︰ 事件 ID 22 错误 0xC1000016 将会记录或当您使用 SSA 2012 发现命令

2103903

2972285

修复︰ 性能问题时为您的部署中使用 SSISDB 将存储在 SQL Server 2012

2021581

2965035

SQL Server 2012 Service Pack 2 中的日志记录功能改进的 SSA 2012 年

203749

2952444

当您在 SQL Server 2012年中使用表变量修复︰ 差性能

2095064

2936328

修复︰ 时发生访问冲突已保存在 SQL Server 2008 R2 或 SQL Server 2012年中的计算的列的表运行存在或 CHECKDB

1222472

2827857

修复︰ DTA 不适用于 SQL Server 2012年实例使用附属的字符排序规则

2124209

2939277

修复︰ 运行查询时不正确的结果包含 UNION 运算符在 SQL Server 中使用并行查询计划

SQL Server 2012 SP2 中也包括对以下问题的解决方法。

VSTS bug 数

说明

950185

改进了围绕在处理大型的 HTML 报表时处理错误和警告消息。

950189

改进了周围使用具有大量参数的报告时处理错误和警告消息。

994470

当您使用不正确的结果阻塞模式下的一元运算符。

1041277

AlwaysOn 辅助服务器上的 DPM 的完整备份将被转换为 copy_only 备份。

1278767

表格实例性能计数器的值︰ Memory\VertiPaq 类型 < 名称 > KB始终是 0。

1355346

SCOPE 语句的结尾与期初的 SCOPE 语句不匹配。

1374617

修复︰ 共享的组件时被安装在错误的位置实现 SQL Server 2008年故障转移群集安装

1610447

未初始化的对象会导致崩溃和潜在错误结果执行条件计算 DAX 表达式时。

1610492

简单的 DAX 查询返回意外的结果当使用 PowerPivot v2 11.0.3000.0。

2060218

"ACTIONABLE_HEAP_CORRUPTION"当 SSRS 配置文件分析通过使用实例 Id无效。

2065570

NonYieldProcessTable RING_BUFFER_NONYIELD_PROCESSTABLE环形缓冲区中的记录没有用户和内核处理时间。

2075161

提供了 SSRS 2012 的平台日志中的信息

1347204

修复︰ 访问冲突时具有在 SQL Server 2012年中具有跨数据库事务序列默认值的列的表中插入数据

1184332

如果尾日志备份数据库上执行的模型,模型数据库将冻结会阻止成功启动 SQL Server 服务器重启时恢复状态。 这是因为服务器启动过程中无法创建Tempdb数据库并且您会收到以下错误消息:"无法打开数据库 '数据库 < 名称 >"

1243853

3456 时发生错误将记录的大容量数据库日志备份恢复使用初始大小大于 64704 KB 已添加了新的数据文件。

1404999

当您删除数据库快照的发出会话中 LOCK_TIMEOUT 设置时,就可能发生超时错误跟断言错误。

1190211

使用安装的 SQL Server 安装在挂起状态中该怎么办。有关详细信息,请转到知识文库文章。

1386073

当从配置管理器或服务控制管理器停止 SQL Server 安装 SQL Server 2012 SP2 之后,信息性消息被记录到 SQL Server 中,发出关机后立即。在早期版本中,我们发出此消息后内部的服务,例如.NET Framework,服务中介程序已停止。

社区提交的连接项目的修补程序

连接错误 ID

说明

714689

评估结果将写入输出 xml 文件多次针对多个服务器实现企业管理框架并根据一个列表中的服务器发生错误时。

735543

其备份还原为同一个实例上的不同数据库时,数据库将进入还原模式。

736509

您不能调试的存储的过程,SQL Server 管理 Studio (SSMS) 中调用sp_executesql 。当按 F11 时,您会收到错误信息对象引用设置到对象的实例。

740181

SSMS 不完全管理 SQL Server 速成版全文。

745566

SQL Server SMO 忽略在 SQL Server 2012年和 2014 SQL Server 默认约束。

764197

SSMS 处理编号存储过程不一致。

769121

"列 < 列名 >' 不属于表摘要。(System.Data)"复制表具有相同的名称但在不同的架构时出现错误消息。

773710

后还原为数据库快照包含全文索引,您不能创建任何 ft_catalogs 直到您重新启动 SQL Server、 分离和再附加数据库,或者使数据库脱机,然后将数据库设置为联机。

774317

SSMS 偶尔崩溃关闭,然后使它自动重新启动

785064

"值为 null 是无效的流"时出现错误消息使用客户管道组件在业务智能开发 Studio (BIDS)。

785151

在执行时显示实际的查询计划查询打开,返回的Null结果,,并且您会收到以下错误消息︰
错误︰ 消息 50000、 级别 16、 状态 10,过程测试、 行 34 字符串或二进制数据将被截断。

791929

"系统断言检查失败"错误消息当您将数据插入触发器的分区视图。

797967

创建脚本重复语句脚本 SSMS 中的列级权限时。

799430

当您尝试刷新 SSMS 窗口图标在任务栏上的,SSMS 可能会崩溃。

804901

部署新版本的大型项目部署到 SSIS 目录数据库 (SSISDB) 过程中遇到了超时值。此外,您收到以下错误消息︰
部署项目失败。有关详细信息,查询操作标识符的 operation_messages 视图 219′。(Microsoft SQL Server,错误︰ 27203)无法部署该项目。解决这些问题,请稍后再试。: 超时已过期。在操作完成之前已超时或服务器没有响应。语句已终止。

805659

"您的 SQL 语句的某些部分嵌套太深。重写查询或将其分解成较小查询"时出现错误消息分析或执行存储过程。



SQL Server 2012 SP2 的亮点

以下是一些在 SQL Server 2012 Service Pack 2 (亦即 SP2) 中的更改的突出显示︰

  • 可支持性︰

    • 35285 消息为信息性消息按预期的方式,而不是一个错误。

  • 功能︰

    • SQL 编写器支持COPY_ONLY备份︰ Data Protection Manager (DPM) AlwaysOn 辅助服务器上的完整备份将被转换为COPY_ONLY备份。


  • 添加到本地多维数据集创建方案的支持︰

    • 当使用 SQL Server 2012 Analysis Services (SSAS 2012) SP2 时,您可以创建连接到运行 SQL 浏览器关闭的静态非默认端口的 SSA 本地多维数据集。这一新功能由 msmdsrv.ini 中的新配置设置来控制:"ConfigurationSettings\LocalCubeServerPortInConnectionString"。若要启用此功能,请将值设置为 1。此设置将不起作用如果 SSA 2012 作为故障转移群集配置或运行在默认端口。

  • 添加多个记录︰

    • 此服务包添加 SSA 日志文件来帮助改进故障诊断详细信息。这包括 SSA 版、 计算机名称、 netbios 名称、 数量的 Cpu、 内存大小、 IP、 端口、 协议类型、 死锁、 锁超时和一些其他信息。


  • SSISDB 死锁和清理性能改进

    • 简介

      • 在并发调用SSISDB.catalog.create_execution存储过程 SSISDB 数据库中出现死锁

        • SSISDB concurrences 和死锁问题已经解决。但是,这不能解决所有问题。当前的解决方法按几秒钟错开作业。但是,您不能使用此替代方法。

        • SSISDB 维护作业性能较差

      • 修补程序是可用的 SSISDB 维护作业。

    • 体系结构

      • 先前的模型︰

        • 每个事务创建证书和对称密钥,它还必须存储和维护或清理任务中处理。

      • 新模型︰

        • 向目录属性表SERVER_OPERATION_ENCRYPTION_LEVEL中的新行和默认介绍PER_EXECUTION以保持向后兼容性,可以将值更改为PER_PROJECT创建一个密钥或证书对每个项目。完全清理,需要先从PER_EXECUTION更改为PER_PROJECT。完全清理引入两个新的存储过程。

      • 更改摘要︰

        • 介绍 SSISDB 属性表SERVER_OPERATION_ENCRYPTION_LEVEL中的新行︰

          • 只有两个值是无效 (1 和 2)。

          • "1"的值︰ 默认值。使用对称密钥和证书根据执行级别加密。高安全性,但它可能有性能或死锁问题。

          • 值"2": 加密与对称密钥和根据项目级别的证书。更少的安全性,解决性能或死锁问题。

        • 引入两个新的存储的过程 (SPs) Cleanup_server_logs和cleanup_server_execution_keys

          • Sp 被设计用于更改加密的级别从"1"到"2。您可以运行Cleanup_server_logs第一次,可以很快完成,要让处于良好状态的 SSISDB。SSISDB 数据库就可以更改加密级别。

          • Cleanup_server_keys比Cleanup_server_logs更长时间。但是,它是加密级别更改为"2"后运行,并且定期运行在高峰时间关闭。

          • Cleanup_server_logs︰ 仅清理所有操作日志。

          • Cleanup_server_execution_keys︰ 清理对称密钥和证书,用来保护敏感的执行参数。

          • @cleanup_flag int (在 (1,2))

            • cleanup_flag = 1︰ 除去执行级对称密钥和证书

            • cleanup_flag = 2︰ 删除项目级别的对称密钥和证书 (将只放置与此项目相关的这些如果此 perticular 项目已被删除,所有操作日志已清除)。

          • @delete_batch_size int = 1000年

            • 在一次调用此存储过程,将丢弃的密钥或证书数。

        • 在internal.cleanup_server_retention_window, delete_batch_size从更改 10 到 1000年。


  • 可选支持表变量行计算改进查询计划︰

    • 如果 SQL Server 中的其他表与联接表变量,它可能会导致低效的查询计划选择低速性能,因为 SQL Server 在编译查询计划时不会不支持统计或跟踪号码表变量中的行。

    • SQL Server 2012 sp2,被引入新的跟踪标志,使查询优化器使用表变量中插入的行数有关的信息,以便选择更高效的查询计划。启用跟踪标志 2453 激活此行为。

      注释︰

      • 在某些情况下,启用跟踪标志 2453年可能会导致其他编译到实际执行期间插入到表变量的行数的帐户所需的性能,有些下降。通常情况下,您将受益于此跟踪标志,如果表变量有相当数量的联接与其他表中,行或多行,并在外侧上处理大量行的内侧的计划与嵌套的循环联接运算符的使用。

      • 可能在其他版本的 SQL Server 上实现类似的行为,通过使用选项 (重新编译)查询提示。但是,查询提示需要检测和修改差计划的选择,因为大量的工作由表变量时启用跟踪标志 2453年可能会影响现有的工作负载所遭受的所有查询。

  • 改进的性能故障排除的并行查询执行计划

    • DMV sys.dm_exec_requests现在返回准确值cpu_time的并行查询执行计划。统计信息现在, IO诊断程序报告并行查询执行计划的准确逻辑的读取。

  • 改进的希防泼诊断

    • 哈希联接或哈希聚合运算符会在查询执行过程中扩散到 tempdb 数据库数据,如果相应 I/O 现在 STATISTICS IO 诊断报告。

  • 改进的全文索引诊断

    • 在某些情况下它可能很难理解如何返回某些全文查询的结果。全文搜索子系统进行交互,与外部的分词和停止列表和文档中的关键字的位置信息可能不同于实际文本中观察的到此交互作用的结果。当执行短语或接近以来词与词之间的增量搜索用于内部计算查找匹配的文档,这是高度相关。

    • SQL Server 2012 SP2 中添加了新的动态管理功能 (DMF) 用于提供对定位关键字索引的文档中的信息的访问。 新的 DMF 类似于现有 DMF sys.dm_fts_index_keywords_by_document,并具有以下语法︰sys. dm_fts_index_keywords_position_by_document (
      DB_ID('database_name'), OBJECT_ID('table_name')
      )

    • 而不是发生计数,它将返回每个匹配项,并且在已构建索引文档中的位置有关的信息。

    • 此信息可用于查看文本的内部索引,它将显示在增量,区别,如果有的话,有关的搜索短语之间的映射。这有助于理解结果从短语搜索。


  • 可支持性

    • 事务复制︰

      • 添加到历史记录表中的统计信息和更详细的消息代理日志中的详细信息︰

        • 添加的文本消息到 < 统计 > xml 输出定义日志读取器和分发代理程序在不同的状态。

        • 分发服务器的日志读取器添加的文章级别统计参数化命令。

        • 已跳过的命令输出文件在分发服务器上的代理数增加。

        • 添加时间执行分发服务器代理中的架构更改。

      • 日志读取器︰ 在添加日志记录。当捕获用户转储时的 TXT 文件。

      • 对等︰ 插入、 更新和删除过程将更新,以提供对冲突消息的详细信息的下面︰

        • 表名

        • 为主键列名称和值

        • 当前版本

        • 后期版本

    • 合并复制︰

      • 将添加到日志文件中,当合并代理程序的输出详细级别设置为 4 的跟踪标记 101 输出。

  • Functionnality

    • 事务复制︰

      • 现在对等复制支持部分使用更新的文本列所做的更新或。写语义。

    • 合并复制︰

      • 清理的存储的过程已经过重新设计,以避免冗余上载的数据。


  • 与处理错误和警告,以防止公共调用到 CSS,大型的 HTML 报表记录消息。

    • 概述︰

      • 检测到的报表设计,以确定是否报表设计将净大的 HTML 报告,并有可能导致性能问题。这应通过检查的交互式页面高度和宽度设置方便地检测。

    • 用户方案︰

      • 您在报表生成器中创建的报表。在InteractiveSize属性中输入值"0"。您将收到一个弹出窗口,包含以下消息警告有关潜在的性能影响︰

        将交互式 heigth 设置为 0 的垫对性能的影响。


  • 性能增强

    • 在下列文章中所述的 Service Pack 2 中的几种性能增强︰

      • 当在 SQL Server 2012年中的数据库锁定活动增加时出现性能问题

      • 在外页处理 SQL Server 2012 NUMA 环境中会出现的性能问题

      • 更改索引后,性能会下降...联机操作中止在 SQL Server 2012

    • DMV 的增强功能

      • sys.dm_db_session_space_usage将反映在 tempdb 数据库中执行的每个会话的用户对象的空间量。当删除的行数超过 1024年页,这些页释会延期。SQL Server 2012 Service Pack 2 中车管局还将在名为user_objects_deferred_dealloc_page_count的新列中延迟的分配单元的包括空间使用情况。

      • sys.dm_server_services将现在正确地指定节点名称中cluster_nodename列如果在故障转移群集上安装 SQL Server。

    • 环形缓冲区增强功能

      • 应用程序域的信号缓冲区RING_BUFFER_CLRAPPDOMAIN包括< DoomReason >字段中程序卸载应用程序域的原因的原因︰

        • 1 = DDL 操作如删除程序集卸载。

        • 2 = 卸载安全相关的操作,例如更改权限。

        • 3 = 由于内存压力处理卸载。

        • 4 = 卸载由于初始化失败。

      • 相应的扩展事件app_domain_ring_buffer_recorded doom_reason事件数据字段中包含卸载的原因。

      • RING_BUFFER_RESOURCE_MONITOR含有在资源监视器监视的状态中检测到更改的条目。此外,针对系统和进程资源通知池通知中还提供< IndicatorsPool >< / IndicatorsPool >节点。

      • 在pool_indicators字段中的数据, Resource_monitor_ring_buffer_recorded扩展的事件包括池宽通知。

      • RING_BUFFER_NONYIELD_PROCESSTABLE包括进程名称以及到 8192 记录环形缓冲区项的次系统中运行的线程的其他信息。

    • 备份和还原功能增强

      • 模型不恢复选项的尾日志备份不再允许 Service Pack 2 开始。

      • 在错误日志中的备份和还原完成消息包括持续时间和吞吐量信息︰

        • 备份数据库成功处理了 298 页 0.026 秒 (89.261 MB/秒)。

        • 还原数据库成功处理了 298 页 0.016 秒 (145.050 MB/秒)。

    • 扩展的事件

      • 已添加或在 SQL Server 2012 Service Pack 2 中修改以下扩展的事件︰

        • 内存分配︰

          • 扩展的事件page_allocated和page_freed可以用来查看 SQL Server 内存的顶部使用者。Service Pack 2 的开始,这些扩展的事件还报告保留的内存分配和释放在查询执行过程中。

        • 幻影清理︰

          • 当表或索引中删除记录时,删除操作永远不会实际从页中删除记录时,它只将其标记为已删除,或做幻像。。这是优化的性能,快速地允许对多完成删除操作。后台任务称为影子清理任务然后物理上删除所有已删除的记录。Service Pack 2 提供深入了解此任务的各个阶段中添加多个扩展的事件︰

            • ghost_cleanup_task_start

            • ghost_cleanup_task_suspend

            • ghost_cleanup_task_packet_enqueue

            • ghost_cleanup_task_process_packet

            • ghost_cleanup_task_process_pages_for_db_packet


参考资料

有关如何确定当前的 SQL Server 版本和版本的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章︰

321185如何确定版本和版本的 SQL Server 及其组件

作者︰ v-shysun
Writer: v-shysun
技术审阅︰
编辑器︰v emy

需要更多帮助?

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

此信息是否有帮助?

谢谢您的反馈意见!

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

×