FIX: SQL Server 2000 中插入大量文本、 ntext 或图像数据通过多个并发连接需要花很长时间

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 886708
本文已归档。它按“原样”提供,并且不再更新。
bug #: 472729 (SQL Server 8.0)
概要
本文介绍以下有关此修补程序版本:
  • 通过此修补程序包修复的问题
  • 安装此修补程序包的先决条件
  • 在安装此修补程序包后是否必须重新启动您的计算机
  • 此修补程序包是否替换任何其他修补程序包
  • 是否必须进行任何注册表更改
  • 修补程序包中包含的文件
back to the top
症状
在 Microsoft SQL Server 2000 中,当通过多个的并发连接插入大量文本、 ntext 或图像数据时数据可能要花费更长的时间比在 $ 方案中插入此处按顺序插入数据。

并发插入发生时, sysprocesses 虚拟表可能会显示以下值之一的该连接的执行,插入 waittype 列中:
  • 0x0413 (PAGELATCH_UP)
  • 0x0414 (PAGELATCH_EX)
值在 PAGELATCH_UP waitresource 列的 waittype 是始终是 8088 的偶数倍的页码。

所有公开发布的 SQL Server 2000 Post-Service 包 3a 修补程序在资源列表,请参阅下面 Microsoft 知识库中相应的文章:
810185SQL Server 2000 修复程序更新 SQL Server 2000 Service Pack 3 和 3a
back to the top
原因
二进制大对象 (BLOB) 数据插入通过并发连接时,会出现此问题。

文本、 ntext 和图像数据存储在数据块中。这些块链接,并且 SQL Server 2000 中的窗体的二进制数据的特定行的序列。这些块的数据可以是下列值之一:
  • 完全相关联的单个行在页上的所有数据都所在的页面。
  • 混合的页,用于存储从多个行的碎片。
当完整页均分配时,延迟可能会发生之间分配页和标记为已满页面。这种延迟可能会导致检查页面,以了解是否有可用空间,为该插入其他并发插入内容。

当通过并发连接中插入数据时 sysprocesses 虚拟表可能表明正在尝试插入该连接具有一个 waittype 的 PAGELATCH_UP 和 PAGELATCH_EX waittypes 为下列值之一。
  • 0x0413 (PAGELATCH_UP)
  • 0x0414 (PAGELATCH_EX)
在并发连接用于插入一个传入线程试图闩锁页 PAGELATCH_EX。然而,在线程被阻止。然后,插入等待当前插入到绘图页后,该线程。仅当首次插入完成第二个插入找页面已满,没有可用于第二个插入的空间。发生这种情况下时, 要寻找另一页上插入对分配代码返回第二个插入。这些附加的行程分配代码会导致延迟插入到 SQL Server 2000 通过并发连接的数据。

back to the top
解决方案

服务包信息

若要解决此问题,获得最新的 service pack,对于 Microsoft SQL Server 2000。有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
290211如何获取最新的 SQL Server 2000 服务包

修补程序信息

系统必备组件

此修补程序要求 SQL Server 2000 Service Pack 3 (SP3)。有关如何获取 SQL Server 2000 Service Pack 3 的详细信息单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
290211如何获取最新的 SQL Server 2000 服务包
此外,此修补程序需要您同时具有 SQL Server 2000 修复程序生成 2000.80.977 安装。有关 SQL Server 2000 后 SP3a 修补程序的信息生成 2000.80.977,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
888007当您尝试安装一个 SQL Server 2000 post-Service Pack 3 修补程序时,您收到产品没有安装必备更新后"的错误消息
back to the top

重新启动信息

您不必在应用此修补程序后重新启动计算机。

back to the top

修补程序文件信息

此修补程序仅包含那些文件解决本文列出了该问题所必需的。此修补程序不能包含将产品完全更新到最新版本所必需的所有文件。

此修补程序的英文版具有的文件属性 (或更新的文件属性) 在下表中列出。日期和时间对这些文件列出在协调世界时 (UTC)。当您查看文件信息时,将转换为本地时间。若要 UTC 与本地时间之间的时差使用控制面板中的日期和时间工具中的 时区 选项卡。

SQL Server 2000 32 位版本

   Date         Time   Version        Size       File name   ------------------------------------------------------------------   08-Oct-2004  01:13  2000.80.980.0    664,128  Autoplt.dll         08-Oct-2004  01:13  2000.80.980.0     78,400  Console.exe         08-Oct-2004  01:13  2000.80.980.0    332,352  Ctasksui.dll        08-Oct-2004  01:13  2000.80.980.0    315,968  Custtask.dll        08-Oct-2004  01:13  2000.80.980.0     33,340  Dbmslpcn.dll        08-Apr-2004  21:42                   786,432  Distmdl.ldf   08-Apr-2004  21:42                 2,359,296  Distmdl.mdf   30-Sep-2003  22:55                       180  Drop_repl_hotfix.sql   08-Oct-2004  01:13  2000.80.980.0  1,905,216  Dtspkg.dll          08-Oct-2004  01:13  2000.80.980.0    528,960  Dtspump.dll         08-Oct-2004  01:13  2000.80.980.0  1,557,052  Dtsui.dll           08-Oct-2004  01:13  2000.80.980.0    639,552  Dtswiz.dll          30-Sep-2003  22:55                   747,927  Instdist.sql   30-Sep-2003  22:55                     1,581  Inst_repl_hotfix.sql   08-Oct-2004  01:13  2000.80.980.0    352,828  Isqlw.exe           08-Oct-2004  01:13  2000.80.980.0     82,492  Itwiz.exe           08-Oct-2004  01:13  2000.80.980.0     90,692  Msgprox.dll         19-May-2004  23:43  8.11.40209.0     209,408  Mssdi98.dll         08-Oct-2004  01:13  2000.80.980.0     62,024  Odsole70.dll        08-Oct-2004  01:14  2000.80.980.0     25,144  Opends60.dll        08-Oct-2004  01:13  2000.80.980.0     57,904  Osql.exe            08-Oct-2004  01:13  2000.80.980.0    279,104  Pfutil80.dll        30-Sep-2003  22:48                   550,780  Procsyst.sql   08-Apr-2004  21:42                    12,305  Qfe469315.sql   08-Apr-2004  21:42                    19,195  Qfe469571.sql   27-Aug-2004  00:13                     5,157  Qfe472197.sql   08-Oct-2004  01:13  2000.80.980.0    143,940  Qrdrsvc.exe         30-Sep-2004  16:25                 1,105,167  Replmerg.sql   08-Oct-2004  01:13  2000.80.980.0    221,768  Replprov.dll        08-Oct-2004  01:13  2000.80.980.0    307,784  Replrec.dll         30-Sep-2004  01:51  2000.80.980.0    159,813  Replres.rll   27-Aug-2004  00:13                 1,086,925  Replsys.sql   30-Sep-2003  22:55                   986,603  Repltran.sql   08-Oct-2004  01:13  2000.80.980.0    287,304  Rinitcom.dll        08-Oct-2004  01:13  2000.80.980.0     78,416  Sdiclnt.dll         08-Oct-2004  01:13  2000.80.980.0     66,112  Semmap.dll          08-Oct-2004  01:13  2000.80.980.0     57,916  Semnt.dll           08-Oct-2004  01:13  2000.80.980.0    492,096  Semobj.dll          30-Sep-2004  02:20  2000.80.980.0    172,032  Semobj.rll   08-Oct-2004  01:13  2000.80.980.0     53,832  Snapshot.exe        30-Sep-2003  22:48                   117,834  Sp3_serv_uni.sql   08-Oct-2004  01:12  2000.80.980.0     28,672  Sqlagent.dll        08-Oct-2004  01:13  2000.80.980.0    311,872  Sqlagent.exe        08-Oct-2004  01:12  2000.80.980.0    168,001  Sqlakw32.dll        08-Oct-2004  01:13  2000.80.980.0     33,344  Sqlctr80.dll        08-Oct-2004  01:13  2000.80.980.0  4,215,360  Sqldmo.dll          08-Oct-2004  01:13                    25,172  Sqldumper.exe       30-Sep-2004  01:34  2000.80.980.0     28,672  Sqlevn70.rll   08-Oct-2004  01:13  2000.80.980.0    156,224  Sqlmaint.exe        08-Oct-2004  01:13  2000.80.980.0    180,792  Sqlmap70.dll        08-Oct-2004  01:13  2000.80.980.0    188,992  Sqlmmc.dll          30-Sep-2004  02:34  2000.80.980.0    479,232  Sqlmmc.rll   08-Oct-2004  01:13  2000.80.980.0    401,984  Sqlqry.dll          08-Oct-2004  01:13  2000.80.980.0     57,920  Sqlrepss.dll        08-Oct-2004  01:13  2000.80.980.0  7,712,849  Sqlservr.exe        08-Oct-2004  01:13  2000.80.980.0    590,396  Sqlsort.dll         08-Oct-2004  01:13  2000.80.980.0     45,644  Sqlvdi.dll          08-Oct-2004  01:13  2000.80.980.0    106,588  Sqsrvres.dll        08-Oct-2004  01:13  2000.80.980.0     33,340  Ssmsgnet.dll        08-Oct-2004  01:13  2000.80.980.0     33,340  Ssmslpcn.dll        08-Oct-2004  01:13  2000.80.980.0     33,340  Ssmsqlgc.dll        08-Oct-2004  01:13  2000.80.980.0     82,492  Ssnetlib.dll        08-Oct-2004  01:13  2000.80.980.0     25,148  Ssnmpn70.dll        08-Oct-2004  01:13  2000.80.980.0    123,456  Stardds.dll         08-Oct-2004  01:13  2000.80.980.0    158,240  Svrnetcn.dll        08-Oct-2004  01:13  2000.80.980.0     76,416  Svrnetcn.exe        08-Oct-2004  01:13  2000.80.980.0     49,228  Ums.dll             08-Oct-2004  01:13  2000.80.980.0     74,304  Xplog70.dll         08-Oct-2004  01:13  2000.80.980.0     98,872  Xpweb70.dll      

SQL Server 2000 64 位版本

   Date         Time   Version        Size        File name             Platform   -----------------------------------------------------------------------------   01-Oct-2004  02:28  2000.80.980.0      56,832  Dbmslpcn.dll          IA-64   08-Apr-2004  21:42                    786,432  Distmdl.ldf   08-Apr-2004  21:42                  2,359,296  Distmdl.mdf   30-Sep-2003  22:55                        180  Drop_repl_hotfix.sql   30-Sep-2003  22:55                    747,927  Instdist.sql   30-Sep-2003  22:55                      1,581  Inst_repl_hotfix.sql   01-Oct-2004  02:28  2000.80.980.0     185,856  Msgprox.dll           IA-64   19-May-2004  23:43  8.11.40517.0      722,944  Mssdi98.dll           IA-64   01-Oct-2004  02:28  2000.80.980.0     151,040  Odsole70.dll          IA-64   01-Oct-2004  02:29  2000.80.980.0      27,136  Opends60.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0     148,992  Osql.exe              IA-64   30-Sep-2003  22:48                    550,780  Procsyst.sql   08-Apr-2004  21:42                     12,305  Qfe469315.sql   08-Apr-2004  21:42                     19,195  Qfe469571.sql   27-Aug-2004  00:13                      5,157  Qfe472197.sql   01-Oct-2004  02:28  2000.80.980.0     353,280  Qrdrsvc.exe           IA-64   30-Sep-2004  16:25                  1,105,167  Replmerg.sql   01-Oct-2004  02:28  2000.80.980.0     534,528  Replprov.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0     769,024  Replrec.dll           IA-64   30-Sep-2004  16:26  2000.80.980.0     146,432  Replres.rll   27-Aug-2004  00:13                  1,086,925  Replsys.sql   30-Sep-2003  22:55                    986,603  Repltran.sql   01-Oct-2004  02:28  2000.80.980.0     650,240  Rinitcom.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0     160,768  Semmap.dll            IA-64   01-Oct-2004  02:28  2000.80.980.0     132,608  Semnt.dll             IA-64   01-Oct-2004  02:28  2000.80.980.0      88,576  Snapshot.exe          IA-64   30-Sep-2003  22:48                    117,834  Sp3_serv_uni.sql   01-Oct-2004  02:27  2000.80.980.0      10,240  Sqlagent.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0   1,055,232  Sqlagent.exe          IA-64   01-Oct-2004  02:28  2000.80.980.0      90,112  Sqlboot.dll           IA-64   01-Oct-2004  02:28  2000.80.980.0      32,256  Sqlctr80.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0  13,845,504  Sqldmo.dll            IA-64   01-Oct-2004  02:28                     39,936  Sqldumper.exe         IA-64   30-Sep-2004  16:15  2000.80.980.0      19,968  Sqlevn70.rll   01-Oct-2004  02:28  2000.80.980.0     493,568  Sqlmaint.exe          IA-64   01-Oct-2004  02:28  2000.80.980.0      23,040  Sqlmap70.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0     152,064  Sqlrepss.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0  25,205,760  Sqlservr.exe          IA-64   01-Oct-2004  02:28  2000.80.980.0     616,960  Sqlsort.dll           IA-64   01-Oct-2004  02:28  2000.80.980.0     120,320  Sqlvdi.dll            IA-64   01-Oct-2004  02:28  2000.80.980.0     227,328  Sqsrvres.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0      53,760  Ssmslpcn.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0      59,904  Ssmsqlgc.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0     255,488  Ssnetlib.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0      20,992  Ssnmpn70.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0     430,080  Svrnetcn.dll          IA-64   01-Oct-2004  02:28  2000.80.980.0     185,856  Svrnetcn.exe          IA-64   01-Oct-2004  02:28  2000.80.980.0     183,296  Xplog70.dll           IA-64   01-Oct-2004  02:28  2000.80.980.0     187,392  Xpweb70.dll           IA-64
注意由于存在文件依赖性包含这些文件的最新修补程序还可能包含其他文件。back to the top
状态
Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的错误。

Microsoft SQL Server 2000 Service Pack 4 中,第一次已得到纠正此问题。

back to the top
更多信息
有关命名 SQL Server 更新架构的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
822499Microsoft SQL Server 软件更新程序包的新命名架构
Microsoft 使用时它可以解决软件,它被释放之后的术语有关的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684用于描述 Microsoft 软件更新的标准术语的说明
back to the top
SQL2000 PFS 文本插入争用闩锁超时

警告:本文已自动翻译

属性

文章 ID:886708 - 上次审阅时间:01/17/2015 09:07:15 - 修订版本: 2.4

Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 标准版, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2000 Personal Edition, Microsoft SQL Server 2000 Workgroup Edition, Microsoft SQL Server 2000 Desktop Engine (Windows), Microsoft SQL Server 2000 Enterprise Edition 64-bit

  • kbnosurvey kbarchive kbmt kbsqlserv2000presp4fix kbfix kbbug kbhotfixserver kbqfe KB886708 KbMtzh
反馈