microsoft 的服务包 3a 2003 SQL Server 2000 年四月 9,

文章翻译 文章翻译
文章编号: 889551 - 查看本文应用于的产品
对于 Microsoft SQL Server 2000 的服务包 3a
2003 年 4 月 9日
版权 Microsoft Corporation,2003年。 保留的所有权利。SQL Server 文档工作组不能回答技术支持问题,但欢迎您的建议和有关本自述文档注释。您可以快速并直接发送使用下面的链接的电子邮件反馈。所有反馈都必须使用英语。若要提交有关本文档的书面的反馈,单击此处:
展开全部 | 关闭全部

本文内容

1.0 简介

Microsoft SQL Server 2000 Service Pack 3a (SP3a) 合并到 SQL Server 2000 SP3 的更改针对 Slammer 蠕虫所产生的问题:
  • 若要将修补程序应用于该版本的 SQL Server 的实例,可以将 SP3a 应用于 SQL Server 2000 企业评估版。
  • SP3a 解决安装问题与 SQL Server 2000 SP3 中的 Microsoft 数据访问 (MDAC) 组件的版本时遇到某些客户
  • MSDE 2000 SP3a 安装应用程序现在默认为安装的 MSDE 2000 的新实例时,请关闭网络连接的支持。 当实例升级到 SP3a 时,将保留当前的网络支持设置。
  • 当 SQL Server 2000 SP3a 或 MSDE 2000 SP3a 的实例被配置为不支持网络连接时,该实例也会停止使用 UDP 端口 1434年。
因为大多数 SP3a 中引入的更改与安装相关,您不必应用 SP3a 的已经升级到 SP3 的 SQL Server 2000 或 MSDE 2000 实例。如果您还没有升级到 SP3 的实例但是,您应始终这些实例直接升级到 SP3a,而不是 SP3。如果您已计划以用于将来的升级 SP3 下载文件的任何副本您应该删除这些副本,而使用 SP3a 下载文件或 SP3a 光盘程序的分发和安装 MSDE 2000 应该安装 SP3a 的 SP3 而不是。SQL Server 2000 SP3 或 MSDE 2000 SP3 的实例可以应用 SP3a 时, 这样做将因此具有几乎没有影响这些实例。

此版本的 Service Pack 3a (SP3a) 的 Microsoft SQL Server 2000 所提供的三个部分:
  • 数据库组件 SP3a 数据库组件的 SQL Server 2000,不包括 SQL Server 2000 桌面引擎的实例的实例提供更新。数据库组件 SP3a 包含的更新:
    • 数据库引擎中。
    • 所有数据库客户端工具和实用程序如 SQL Server 企业管理器和 $ osql 实用工具。
    • 数据库如该 Microsoft OLE DB 提供程序 SQL Server 2000、 SQL Server 2000 ODBC 驱动程序和客户端网络库的客户端连接组件。
  • Analysis Services SP3a 提供 SQL Server 2000 Analysis Services 组件的一个 SQL Server 2000 安装的更新,包括:
    • Analysis Services。
    • Analysis Services 客户端组件: 对于 Analysis Services 包括 olap 管理器和 $ 在 Microsoft OLE DB 提供程序。
    • 数据库如该 Microsoft OLE DB 提供程序 SQL Server 2000、 SQL Server 2000 ODBC 驱动程序和客户端网络库的客户端连接组件。
  • 桌面引擎 SP3a 提供更新了数据库组件的实例的 SQL Server 2000 桌面引擎 (MSDE 2000) 包括:
    • 数据库引擎中。
    • 数据库命令提示符下实用程序,如 osql,bcp 实用工具随 MSDE 2000。
    • 数据库如该 Microsoft OLE DB 提供程序 SQL Server 2000、 SQL Server 2000 ODBC 驱动程序和客户端网络库的客户端连接组件。
可以应用 SP3a 的这些三个部分,分别、,如下所示:
  • SQL Server 2000 个网站可以为他们升级数据库组件无需升级其 Analysis Services 使用数据库组件 SP3a 组件或 SQL Server 2000 桌面引擎的实例。
  • Analysis Services 2000 个网站可以为他们升级 Analysis Services 组件无需升级桌面引擎或其数据库组件的实例使用 Analysis Services SP3a。
  • MSDE 2000 个网站可以使用桌面引擎 SP3a 升级的 MSDE 2000 实例,而不升级 Analysis Services 或 SQL Server 2000 数据库引擎的实例。
注意如果在同一台计算机上安装了 MSDE 2000 和其他版本的 SQL Server 2000 数据库引擎的单独实例,必须将桌面引擎 SP3a 应用于 MSDE 2000 和数据库组件 SP3a,如个人版、 标准的版或企业版,SQL Server 2000 数据库引擎的实例的实例。

注意桌面引擎 SP3a 是只因为 SQL Server 2000 桌面引擎 (MSDE 2000) 是唯一的 SQL Server 2000 会为这些语言生成的版本中葡萄牙语 (巴西)、 瑞典语和荷兰语,可用的服务包的一部分。在升级数据库组件 SP3a 或 Analysis Services SP3a SQL Server 2000 组件中不可用这些语言。葡萄牙语 (巴西) 瑞典语,和荷兰语用户想要应用 SP3a SQL Server 其他比 Desktop Engine 必须下载该 SP3a 文件与他们想要升级的版本的语言相匹配的版本。例如对于必须下载英语语言 SP3a 文件升级英语语言 SQL Server 2000 数据库引擎的版本。有关如何下载该 service pack,请参阅节 2.0 下载和 $ 提取 SP3a 的信息。

1.1 数据库组件 SP3a 安装的概述

数据库组件 SP3a 安装程序会自动检测的 SQL Server 2000 的版本中都存在 SQL Server 2000 进行升级的实例。安装程序升级仅为该实例安装的组件。例如对于运行 SQL Server 2000 标准版的计算机应用服务包,如果 service pack 不会尝试升级只包括 SQL Server 2000 企业版的组件。

您可以将数据库组件 SP3a 应用于单个默认实例或 SQL Server 的命名的实例。如果您要升级到 SP3a 的多个实例的 SQL Server 2000,您必须为每个实例应用 SP3a。SQL Server 2000 的一个或多个实例的计算机上的一个实例升级到 SP3a 的所有工具都升级到 SP3a。没有为每个实例工具的单独副本。

1.2 桌面引擎 (MSDE 2000) SP3a 安装概述

桌面引擎 SP3a 可用于:
  • 升级到 SP3a 的 SQL Server 2000 桌面引擎 (MSDE 2000) 的一个现有实例。
  • 倘若您拥有一个允许您安装的 MSDE 2000 实例的 MSDE 2000 许可证,请安装 MSDE 2000 SP3a 的新实例。
  • 倘若您拥有一个 MSDE 2000 许可证,允许您运行的 MSDE 2000 实例,请升级到 MSDE 2000 实例的 MSDE 1.0。
  • 提供所需的开发人员可以编写一个可以作为应用程序的安装过程的一部分安装的 MSDE 2000 SP3a 实例的应用程序安装实用程序文件。开发人员必须具有与应用程序分发 MSDE 的许可证。
有关 MSDE 2000 授权的详细信息,请参见 Uses of MSDE 2000

应用于现有的 MSDE 2000 实例的 SQL Server 2000 Service Pack 3a 过程取决于该实例的安装方式。来自 Microsoft 的文件只可用于应用 SP3a 的使用 MSDE 2000 安装的 MSDE 2000 实例在桌面引擎 SP3a 安装实用程序。大多数应用程序安装 MSDE 2000 使用两种机制之一,请执行以下操作:
  • 应用程序的安装实用程序在安装过程中调用 MSDE 2000 安装程序实用程序。实例的 MSDE 2000 安装这种方式可以升级到 SP3a 使用桌面引擎 SP3a 文件。
  • 如果应用程序的安装实用程序使用 Microsoft Windows 安装程序技术,设置实用程序可以直接使用 MSDE 2000 合并模块。无法使用桌面引擎 SP3a 文件升级的 MSDE 2000 安装这种方式实例。您必须为修补程序文件与应用程序供应商联系。桌面引擎 (MSDE 2000) SP3a 提供以支持使用合并模块的现有应用程序的合并模块。对于新的应用程序安装程序实用程序写入调用而不是直接使用 MSDE 2000 合并模块的 MSDE 2000 安装程序实用程序。
用于确定是否可以升级到 SP3a 的 MSDE 2000 实例的说明下载并提取桌面引擎 (MSDE 2000) SP3a 使用桌面引擎 SP3a 是部分 2.1 中。即使要将桌面引擎 SP3a 应用从 SQL Server 2000 SP3a 光盘,读取节 2.1 说明以确定是否可以将应用桌面引擎 SP3a,或者您必须为修补程序文件与应用程序供应商联系。

如果存在 MSDE 2000 的计算机上的多个实例,您必须评估每个实例分别以确定是否可以将应用桌面引擎 SP3a。 您还必须为每个实例分别应用 SP3a。

查看在部分 1 和 2 的本自述文件,材料,并按照节 3 说明如果:
  • 您可以确定您可以将桌面引擎 SP3a 应用于您现有的 MSDE 实例。
  • 要安装 MSDE 2000 的新的实例。
  • 桌面引擎 SP3a 文件并入应用程序的安装实用程序。
以下各节提供升级到 SP3a 的现有的 MSDE 实例或安装的 MSDE 2000 SP3a 的新实例的最常见的情况的示例:
  • 3.7.4 升级到 SP3a 的现有的 MSDE 2000 的实例
  • 3.7.5 安装 MSDE 2000 SP3a 的新的实例
  • 3.7.6 升级到 MSDE 2000 SP3a 的 MSDE 1.0

1.3 删除 SP3a

在其中您可以删除 SQL Server 2000 SP3a 的方式取决于要删除的 SQL Server 2000 SP3a 组件。

删除 SQL Server 数据库组件和桌面引擎 SP3a

安装 SQL Server 数据库组件 SP3a 或桌面引擎 SP3a,则用于维护原因在系统表上对所做的更改,它们,它们也升级数据库的复制拓扑成员的用户和分发数据库。由于的这些的更改无法轻松地移除 SP3a。若要还原到您正在安装 SP3a 之前运行的生成,第一次,您必须卸载 SQL Server 2000 数据库引擎或 MSDE 2000 的实例 ; 然后,您必须重新安装该实例。如果正在运行以前的 SQL Server 2000 service pack,或者应用任何快速修复工程 (QFE) 修复程序,必须重新该服务包和任何 QFE 修补程序应用到实例中。

注意若要去 SP3a 中,您必须具有母版、 模型,和拍摄立即才能应用 SP3a 的 msdb 数据库的备份。更多的信息,请参阅节 3.1 后退向上您 SQL Server 数据库和节 3.2 后退向上您 Analysis Services 数据库和知识库。

有关详细的信息,请参阅卸载 SQL Server 2000 组件和桌面引擎 SP3a。

删除 SQL Server Analysis Services 组件 SP3a

必须为能够 SQL Server Analysis Services 返回到前 SP3a 的状态,备份注册表键
HK_LOCAL_MACHINE\Software\Microsoft\OLAP Server
和任意位置及其子项的所有安装 SP3a 之前。当卸载 SP3a,则必须删除此注册表项,并从备份还原前 SP3a 版本。

注意无法卸载到 MDAC 2.7 SP1a SP3a 安装过程中所做的更新。

有关详细的信息,请参阅 3.1.4 卸除 SQL Server 2000 Analysis Services SP3a。

1.4 标识 SQL Server 或 Analysis Services 的当前版本

以下各节中使用该技术,以确定已安装的 SQL Server 或 Analysis Services 哪个版本。

SQL Server若要打算 SQL Server 2000 数据库引擎或您已安装的 MSDE 2000 的版本键入 SELECT @ @ 版本或 SERVERPROPERTY('ProductVersion') 在命令提示符下使用 osqlisql 实用工具或在 SQL 查询分析器中的查询窗口中。

同样,可以通过执行 SELECT SERVERPROPERTY('ProductLevel') 确定给定 SQL Server 2000 数据库引擎或 MSDE 2000 的版本为产品级别。

下表显示了 SQL Server 2000 版本和级别和版本号之间关系报告的 @ @ 版本和产品级别由 SERVERPROPERTY('ProductLevel') 报告。
收起该表格展开该表格
SQL Server 2000 版本和级别@ @ 版本ProductLevel
SQL Server 2000 原始版本8.00.194RTM
数据库组件 SP1 或桌面引擎 SP18.00.384sp1
数据库组件 SP2 或桌面引擎 SP28.00.534sp2
数据库组件 SP3 或 SP3a,或桌面引擎 SP3 或 SP3a8.00.760sp3
如果您不确定哪种版本的 SQL Server 2000 数据库引擎或您正在运行的 MSDE 2000,查看最后一行的 SELECT @ @ 版本所返回的输出。最后一个行应匹配以下选项之一:
Desktop Engine on Windows NT 5.0 (Build 2195: Service Pack 2)
Enterprise Evaluation Edition on Windows NT 5.0 (Build 2195: Service Pack 2)
Developer Edition on Windows NT 5.0 (Build 2195: Service Pack 2)
Personal Edition on Windows NT 5.0 (Build 2195: Service Pack 2)
Standard Edition on Windows NT 5.0 (Build 2195: Service Pack 2)
Enterprise Edition on Windows NT 5.0 (Build 2195: Service Pack 2)
注释 该行的开头指示该 SQL Server 的版本数据库引擎或 MSDE 2000。这跟当前操作系统信息。

您还可以通过在命令提示符下使用 osqlisql 实用工具或在 SQL 查询分析器中的查询窗口中键入 SELECT SERVERPROPERTY('Edition') 确定该版本。

Analysis Services

若要确定您安装哪个版本的 Analysis Services,请按照下列步骤操作:
  1. 从 $ 开始 菜单中指向 程序、 指向 SQL Server 2000、 指向 Analysis Services,然后单击 分析管理器
  2. 在 olap 管理器树中右键单击分析服务器节点,然后单击 About Analysis Services
  3. 使用下表确定您拥有的 Analysis Services 哪个版本。
收起该表格展开该表格
Analysis Services 版本关于生成在 $ 帮助中的数字
SQL Server 2000 Analysis Services 原始版本8.0.194
Analysis Services SP18.0.382
Analysis Services SP28.0.534
Analysis Services SP3 或 SP3a8.0.760
区分 SP3 和 SP3a 之间

若要确定您是否具有 SP3,也可安装 SP3a,查看网络库文件的 Ssnetlib.dll 的版本号。如果此文件的版本号是 2000.80.760.0,有 SP3 ; 如果此文件的版本号为 2000.80.766.0,您具有 SP3a。

假定使用默认设置已安装实例,您可以在下列位置之一找到 Ssnetlib.dll 文件:
  • 默认实例: 是 Files\Microsoft SQL Server\Binn\Ssnetlib.dll
  • 命名实例: 是 Files\Microsoft SQL Server\MSSQL$<instancename>\Binn\Ssnetlib.dll
若要了解您是否具有 SP3 或 SP3a 设置文件夹,请打开 SP3Readme.htm 文件然后阅读第一页。该 service pack 版本 SP3a 或 SP3,列在第一页的顶部。

1.5 有关 SP3a 其它信息

将在 Microsoft 知识库文章 306908 提供此服务包中包含该修复程序的列表。在 $ 306908 中列出的每个修复都有描述通过此修复程序来解决该问题的知识库文章的链接。对单个的知识库文章,以查看有关每个修复程序的信息链接

若要查找在知识库中的项目
  1. 选择 Microsoft 产品 列表中选择 SQL Server 2000
  2. 搜索 字段中键入所需的文章的编号。
  3. 搜索类型,下选择 文章 ID
  4. 单击 转到 按钮。
与所要包含在本自述文件中的时间内没有 SQL Server 2000 Service Pack 3a 相关的所有信息将在 Microsoft 知识库文章 816502 中都发布。

本自述文件中提到的基本知识文章是可用的 Microsoft 产品支持服务知识库。

Microsoft 数据访问组件

此 service pack 包括更新到 Microsoft 数据访问组件 (MDAC),包括用于 MSXML 的更新。

有关详细的信息,请参阅节 5.5.1 更新 Microsoft 数据访问组件。

QFE 修补程序

所有公开颁发的 SQL Server 2000 SP2 安全公告已被解决 SP3a 中。如果 2002 年 10 月 14 后,您会收到一个 SQL Server 2000 修复程序不是要包括在 SP3a 中有可能该修补程序。

请联系您的主要支持提供者联系以获得有关 SQL Server 2000 SP3a 相同的修补程序。

SQL Server CE 服务器工具更新

Microsoft SQL Server 2000 Windows CE 版本的用户 (SQL Server CE) 已升级的人,或计划升级 SQL Server 2000 数据库和发布服务器的服务器到 SP3 或更高版本中也应更新服务器复制组件 Microsoft Internet Information Services (IIS) 服务器上的。在此 Microsoft Web site 上可用的更新的 SQL Server CE 服务器工具安装程序。

1.6 已更新的简介册联机文档可用

可用的更新的文档以了解 SP3 及 SP3a。SQL Server 2000 丛书联机 (更新-SP3) 包含的次要修订加上与 SP3 和 $ SP3a 的新信息。

您可以从该 Microsoft Web site 下载 SQL Server 2000 丛书联机 (更新-SP3)。

1.7 更新 SQL Server 和 Analysis Services 示例可用

示例 SQL Server 2000 数据库引擎和已更新为 SP3 和 SP3a Analysis Services 都可用。您可以从 Microsoft 网站下载这些更新的示例。

2.0 下载并提取 SP3a

SP3a 分发在以下方面:
  • 上 SQL Server 2000 Service Pack 3a CD-ROM 包含服务包的以下组件:
    • 数据库组件 SP3a
    • Analysis Services SP3a
    • 桌面引擎 SP3a
  • 在可从 Microsoft SQL Server Downloads Web site 上 Internet 下载的三个自解压缩文件:
    • Sql2ksp3.exe (数据库组件 SP3a)
    • Sql2kasp3.exe (Analysis Services SP3a)
    • Sql2kdesksp3.exe (桌面引擎 SP3a)
注意SQL Server 2000 Service Pack 3a CD-ROM 和 Sql2kdesksp3.exe 都包含的所有安装桌面引擎的新实例所需的文件。

注意对于 SP3a 下载文件与文件具有相同的名称,对于 SP3。如果您的 SP3a 光盘可以直接从光盘安装 SP3a。

如果您没有一个 SP3a 光盘,您可以下载相应的文件,然后再运行它。当您的计算机上运行时下载文件时,则它将创建一组文件夹和磁盘上有相同的组织与文件夹的文件和 $ SP3a 光盘上的文件。此文件提取阶段完成后您可以在硬盘上文件夹中安装 SP3a。

当下载提取 SP3a 安装文件从 Internet 时遵循以下准则:
  • 下载一个 2.0 一节中列出的文件并运行要升级到 SP3a,或网络共享上的文件夹中的 SQL Server 2000 软件在计算机上任何一个文件夹中放置自解压文件。从该文件夹运行 $ 文件。自解压程序会提示您要在其中放置的服务包文件文件夹的名称。

    注意当您提取到一个网络该 service pack 共享,您可以指定是相对于在其中运行自解压程序文件夹的文件夹路径。
  • 在本地驱动器或下载到该服务包的安装文件的网络共享上必须有大约三次自解压缩文件的大小的可用空间。这包括空间来存储自解压缩的文件、 用于存储提取的服务的包文件的空间和所需的自解压程序本身的临时工作空间。
  • 您可以重命名或移动文件夹后提取组件 ; 但是,请确保目录的路径名称不包含空格。您可以使用相同的目标文件夹,每个自解压缩的文件 ; 它们不会相互重写或会相互干扰。
  • 自解压文件用于生成一组目录和 $ SP3a 光盘上的相同的文件。如果您下载 SP3a 必须解压缩该文件以生成服务包目录,您可以运行 SQL Server 安装程序之前。
  • 对于数据库组件 SP3a 和 Analysis Services SP3a,在安装过程是相同的 CD-ROM 和提取的文件。
注意一些服务包中的文件是系统文件。您不能查看它们,除非在执行此操作: 在 Windows 资源管理器,在 视图 菜单上单击 选项,再单击 视图 选项卡,然后选择 显示所有文件 都复选框。

如何确定 SQL Server 2000 数据库引擎的 MSDE 2000 实例的语言

SQL Server 2000 service pack 是特定于语言的。要升级 SQL Server 2000,您必须下载并应用 service pack 具有相同 SQL Server 2000 软件的语言。例如对于如果您要升级的 MSDE 2000 使用日语的实例,您必须下载日语版的桌面引擎 SP3a。
  • 单击 开始,然后单击 运行
  • 打开 框中键入注册表编辑器,,然后单击 确定
  • 找到并选择以下项之一:
    • 对于 SQL Server 2000 数据库引擎或 MSDE 2000 一个默认实例找到并选择此项:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion
    • 对于 SQL Server 2000 数据库引擎或 MSDE 2000 的命名实例,找到并选择此项:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\InstanceName\CurrentVersion InstanceName 其中是实例的名称
  • 在右窗格中阅读的语言输入的值。 下表以确定所用的语言的 SQL Server 2000 数据库引擎或 MSDE 2000 实例的值进行比较:
    收起该表格展开该表格
    语言注册表值 (以十六进制格式)语言注册表值 (以十六进制格式)语言注册表值 (以十六进制格式)
    0x000004041028繁体中文
    0x000004071031德语
    0x000004091033英语
    0x0000040a1034西班牙语
    0x0000040c1036法语
    0x000004101040意大利语
    0x000004111041日语
    0x000004121042朝鲜语
    0x000004131043荷兰语
    0x000004161046葡萄牙语 (巴西)
    0x0000041d1053瑞典语
    0x000008052053简体中文
数据库组件和 Analysis Services SP3a 文件

数据库组件和 Analysis Services 两者都包含安装文件更新安装程序文档,您可以通过单击 SP3a 安装过程中的帮助按钮来访问。本文档不会更新您的计算机上已安装的 SQL Server 2000 丛书联机的版本。有关如何获取 SQL Server 联机丛书的更新的版本,请参阅节 1.6 更新丛书 OnlineDocumentation 是可用的信息。如果您要访问只是更新的 SQL Server 2000 SP3a 安装程序文档,而无需更新 SQL Server 联机丛书,运行 Setupsql.chm 文件。Setupsql.chm 位于 SP3a 光盘、 在本地的目录或包含提取的服务包文件的网络共享目录的 \Books 子文件夹中。

2.1 下载并提取桌面引擎 (MSDE 2000) SP3a

具有现有的 MSDE 2000 实例的用户必须知道其实例的 MSDE 2000 了解它的修补程序的安装方式。您可以从记录作为一个注册表项中的 产品代码 项按照 Microsoft 知识库文章 311762 中的信息来确定。
  • 如果原始的软件包名称,为您的 产品代码 值是通过 SqlRun16.msi SqlRun01.msi,您可以升级您的实例的 MSDE 2000 使用 SQL Server 2000 SP3a 下载文件。有关如何确定的 MSDE 2000 实例的语言的信息,请参见上面。
  • 如果原始的包名有关您 产品代码 值是指一个 Microsoft 应用程序请参阅下面的页的说明如何升级的 MSDE 2000 实例: Microsoft MSDE Applications Web page
  • 如果本文中未列出 产品代码 值,则该实例已安装的应用程序安装程序实用程序。若要将 SP3a 应用于此类的 MSDE 实例不能使用 SQL Server 2000 SP3a 下载文件。而是,您必须从编写应用程序的公司获取修补程序文件。如果应用程序来自于不是 Microsoft 公司的您必须与该公司的修补程序文件。如果应用程序来自于 Microsoft,请参阅下面列出了 Microsoft 在 MSDE 的应用程序的页 (此页面将用更新如何升级的 MSDE 2000 这些实例的信息): Microsoft MSDE Applications Web page
  • 如果原始的软件包名称,为您的 产品代码 值是 Sample.msi 或 SampleUpg.msi,请参阅知识库文章 314131。
MSDE 2000 SP3a 下载

如果您的 MSDE 2000 实例已安装了使用 MSDE 安装实用程序 (原始程序包名称是通过 SqlRun16.msi SqlRun01.msi),可以升级您的实例的 MSDE 2000 使用 SQL Server 2000 SP3a 下载文件:
  • 转到 Microsoft SQL Server Downloads Web site
  • 完全下载 框中右上方的此页,选择与您的 MSDE 2000 的实例所用的语言相匹配的语言,然后单击 搜索
  • 在下一页上找到 此下载中的文件 部分中,在页的底部。根据在的语言选择这些文件中的一个:
    • 如果选择了英语下载文件 SQL2KDeskSP3.exe 到您的计算机上的文件夹。
    • 如果选择了另一种语言的下载文件 LLL_SQL2KDeskSP3.exe,LLL 位置因语言而异。
正在提取 MSDE 2000 SP3a 文件

下载 SQL2KDeskSP3.exe 或 LLL_SQL2KDeskSP3.exe 后,您必须提取 MSDE 2000 SP3a 文件:
  • 打开 Windows 资源管理器,然后定位到在其中您下载 (SQL2KDeskSP3.exe 或 LLL_SQL2KDeskSP3.exe,LLL 位置因语言而异) 时,MSDE 2000 SP3a 下载文件文件夹
  • 双击要提取 SP3a MSDE 下载文件的文件。当系统询问,指定 SP3a 文件可以提取到其中的文件夹。

3.0 服务包安装

要安装 SP3a,使用以下各节中的安装说明。并非所有步骤都是所需根据以下 SQL Server 2000 组件,或配置应用到该服务包:
  • 数据库组件
  • Analysis Services
  • 桌面引擎
  • 故障转移群集
  • 复制服务器
第一句中每个以下各节指示该节应用于该组件。

启动安装之前

如果您 SQL Server 2000 数据库引擎或 MSDE 2000 的实例正在由应用程序,首先检查与该应用程序,以查看是否有任何数据库引擎或 MSDE 2000 升级到该应用程序的特定注意事项的提供程序。

如果下面的安全策略的任何一个设置为 不允许安装 SP3a 安装将会失败:
  • 设备: 未签名的驱动程序安装行为 对于 Windows XP 的本地安全策略
  • 对于 Windows 2000 的 未签名非驱动程序安装行为 本地安全策略

    如果您使用 不允许安装 设置,必须将它更改为 默认继续 之前安装 SP3a。如有必要,您可以在其上一设置,在安装完成后返回策略。
注意不允许安装 不是这些安全策略的默认设置。

当运行 Windows 的计算机上安装 SQL Server 2000 SP3a XP、 MDAC 2.7 不会更新到 MDAC 2.7 Service Pack 1a (SP1a)。如果您的系统需要的修补程序包含在 MDAC 2.7 SP1a 任何,您必须首先应用 Windows XP Service Pack 1 之前安装 SQL Server 2000 SP3a。 Windows XP SP1 将包含在 MDAC 2.7 SP1a 中的所有修补程序。

在 Microsoft Windows Server 2003 生成 3683 或更旧的预发布版本上安装此服务包时, 您将收到以下错误消息:

要安装该软件不已通过 Windows 徽标测试,以验证与此 Windows 版本兼容性。不会安装此软件。请与您的系统管理员联系。

您可以选择忽略此消息。单击 确定 以继续运行安装程序。

注意此消息阻止无人参与的安装。

在运行 Windows NT 4.0 服务包的计算机上安装此服务包时 6a,您必须应用此修复程序,在 Microsoft 知识库文章 258437 中所述。

在 Windows NT 4.0 的法语版本上安装 SP3a 之前,按照知识库文章 259484 中的说明进行操作。您可以从 Microsoft 产品支持服务知识库访问文章。有关在搜索知识库,请参阅节 1.5 附加信息关于 SP3a。

启动数据库组件安装之前

如果您的实例 SQL Server Analysis Services 还安装在计算机上的应用数据库组件 SP3a,安装可能失败时执行该的脚本 Sp3_serv_uni.sql。如果发生这种情况,重新启动计算机并再次运行安装程序。
  • SQL Server 2000 service pack 并不影响能够从一个版本 (原始版本或 service pack) SQL Server 2000 或 MSDE 2000 的备份用户数据库,并将其还原上除用户数据库时是复制拓扑的一部分的另一次发布。如果用户数据库不是复制拓扑的一部分,您可以对其进行备份从运行任意版本的 SQL Server 2000 或 MSDE 2000 实例,并将其还原在运行任何其他版本的 SQL Server 2000 或 MSDE 2000 实例上。没有为复制合并复制的详细说明的节 5.3.6 备份和还原问题的其他注意事项。
SP3a 安装升级的复制拓扑成员的用户数据库。在安装 SP3a 之前确保复制数据库和文件组是可写,运行安装程序的用户帐户有权访问该数据库。有关包含在复制拓扑中的数据库应用 SP3a 的详细信息请参阅复制服务器上的节 3.11 安装。

如果 SP3a 安装程序检测到用户数据库或文件组不是可写,它:
  • 所有可写的用户数据库到应用 SP3a 复制更新。
  • 将日志写入到安装不可写的数据库的列表,位于 Winnt\Sqlsp.log。
  • 显示以下警告消息:

    安装程序检测到一个或多个数据库和文件组不可写。
除非在安装程序日志中列出数据库中的一部分是一个复制拓扑中的成员,您可以忽略此警告。任何不可写入安装日志中列出的数据库时的复制拓扑成员必须使这些数据库可写入并重新 SP3a 设置应用于 SQL Server 2000 的实例。

注意此消息不会影响无人参与的安装。有关无人参与安装的详细信息,请参阅节 4.1 无人参与安装。

因为不可写的数据库不再导致失败的安装程序,您没有删除日志传送之前升级到 SP3a。 但是,如果数据库传送到一个复制发布服务器的数据库的日志,您必须:
  • 应用 SP3a 之前使数据库脱机。
  • 应用于实例 SP3a。
  • 使数据库返回到联机状态。
  • 查询分析器登录并运行以下脚本:
    USE master
    GO
    EXEC sp_vpupgrade_replication
    GO
    
如果您不具有脱机不可写的所有数据库传送日志发布数据库的情况下应用 SP3a,您会收到此错误消息:
错误运行脚本 sp_vpupgrade_replication (1)
如果您收到此错误,请按照上述过程。

注意在安装,设置使只读数据库和数据库的脱机或处于可疑状态之间没有区别。如果复制数据库或文件组位于任何这些条件在安装过程中,并且涉及复制拓扑中,您必须进行数据库可写之后重新应用 service pack。

Note 因为不可写的数据库不再导致失败的安装程序,您没有删除日志传送之前升级到 SP3a。

准备系统管理服务器的分布式安装

您不能远程安装 SQL Server 2000 Service Pack 3a。但是,可以使用 Microsoft 系统管理服务器在多个运行 Windows NT Server 4.0 的计算机上自动安装 SP3a。这样做,您必须使用程序包定义文件 (Smssql2ksp3.pdf),可以自动创建的系统管理服务器中 SQL Server 程序包。SQL Server 包可以再进行分发和运行 Systems Management Server 的计算机上安装。文件 Sms2kdef.bat 是启动无人参与的安装,使用系统管理服务器的批处理文件。在安装这种安装程序将自动检测到它需要,并且没有用户的输入所需的相关系统信息。

Note 您不能使用系统管理服务器安装桌面引擎 SP3a。

3.1 备份您 SQL Server 数据库

以下信息适用于除数据库客户端组件之外的所有组件安装。

安装数据库组件 SP3a 或桌面引擎 SP3a 前, 先备份母版、 msdb,和数据库模型。安装 SP3a 修改母版、 msdb,和使它们与 SQL Server 的 SP3 之前的版本不兼容的模型数据库。如果您决定重新安装不带 SP3 或 SP3a SQL Server 2000,则需要使用这些备份。

它也是明智备份您的用户数据库虽然 SP3a 仅在复制拓扑成员的用户数据库上执行更新。

3.2 备份您 Analysis Services 数据库和存储库

下面的信息仅适用于 Analysis Services。

Microsoft 分析 Services\Data 文件夹的副本,从而 Analysis Services 数据库的备份安装 Analysis Services SP3a 之前, 的默认安装的是文件下文件夹。如果您不具有到 SQL Server 迁移 Analysis Services 存储库,请 Msmdrep.mdb,位于 Microsoft 分析 Services\Bin 文件夹中的该文件的备份副本。您还应保存您的分析服务器注册表项通过运行 Regedit.exe 和使用在 注册表 菜单上的 导出注册表文件 项目项
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAPServer
导出到一个文件以进行备份。如果已有您 Analysis Services 知识库迁移到 SQL Server,备份前安装 SP3a 包含存储库数据库。有关详细的信息,请参阅卸载 SQL Server 2000 Analysis Services SP3a。

3.3 确保系统数据库具有足够可用空间

以下信息适用于除数据库客户端组件和 Analysis Services 以外的所有组件安装。

如果没有为母版和 msdb 数据库选择自动增长选项,该数据库必须具有至少 500 千字节 (KB) 的可用空间。若要验证它们具有此空间、 运行 sp_spaceused 系统存储过程的母版或 msdb 数据库。如果在数据库中的未分配的空间小于 500 KB,增加数据库的大小。有关详细的信息,请参阅 SQL Server 联机丛书中的"展开到数据库"。

如果选中了自动增长选项的母版和 msdb 数据库的并且在驱动器上没有足够的空间,您可以跳过此步骤。

要验证已选中自动增长选项 SQL Server 2000 中,打开 SQL Server 企业管理器,用鼠标右键单击为在的数据库图标,然后单击 Properties.Verify,将自动增长选中文件复选框。

要验证选中此选项后 MSDE 2000 中,使用 osql 命令提示实用工具发出下面的 SQL 语句:
  • sp_helpdb 母版
  • sp_helpdb msdb
在这些语句的输出中,验证增长列的值不是 0。

3.4 运行 SP3a 安装前停止服务和应用程序

以下信息适用于所有组件。您可以在不关闭服务的情况下应用 SP3a。

如果不关闭服务,系统会提示您重新启动计算机,安装程序结束时。 而不必重新启动,无法启动以下服务:
  • Microsoft 分布式事务处理协调器 (MS DTC) 和 Microsoft 搜索和 MSSQLServerOLAPService 服务中。 .
  • MSSQLServer 和 SQLServerAgent 服务正在升级实例 (例如对于 MSSQL $ NamedInstance)。
  • Microsoft 组件服务、 Microsoft 消息队列,和 Microsoft COM 事务系统集成商。
  • 所有应用包括控制面板。(可选)
不需要重新启动计算机,通过应用在 SP3a 前停止这些服务和应用程序,您可以应用 SP3a。

您不能停止该服务在群集环境中。更多的信息请参阅故障转移群集上的节 3.10 安装。

3.5 安装数据库组件 SP3a

以下信息适用于所有组件安装桌面引擎和 Analysis Services 除外。

运行 Setup.bat 脚本从下列位置之一:
  • 包含从 SQL2KSP3.exe 提取的服务包文件在本地计算机上目录。
  • 服务包的目录上 SQL Server 2000 SP3a 光盘。
  • 包含从 SQL2KSP3.exe 提取的服务包文件的网络共享上目录。
注意若要从网络共享区安装数据库组件,您必须首先执行以下任一操作:
  • 映射包含提取的服务包的文件到一个可用的驱动器号在本地计算机上的网络共享,定位到包含 Setup.bat,映射驱动器上目录,然后运行 Setup.bat。
  • 通过运行在 \X86\Setup,它是包含提取的服务包文件的网络共享上目录的子文件夹中找到 Setupsql.exe 文件启动安装程序。
安装程序显示一个对话框,提示您有关如您是否要使用 SQL Server 身份验证或 Windows 身份验证的信息。如果您选择 SQL Server 身份验证,您必须提供安装程序使用 sa 登录密码。如果您选择 Windows 身份验证,您必须在运行安装程序在登录到 Windows 时使用的是 Windows 登录帐户。此登录帐户必须是 sysadmin 固定服务器角色,您要升级的 SQL Server 2000 的实例的一部分。

安装程序然后执行以下任务:
  • 如果检测到安装,sa 登录使用空白密码具有混合模式身份验证,它将显示一个 身份验证模式 对话框。将 sa 登录密码 保留为空 SQL Server 或桌面引擎为用户提供轻松的管理访问权限并不建议这样做 ; 通过强制实施的 sa 密码,或使用 Windows 身份验证保护您的系统。若要了解有关此对话框的详细信息,请参阅本部分中稍后介绍的身份验证模式对话框。
  • 如果它检测到一个为 sa 登录保留空密码,则显示一个 SA 密码警告对话框。尽管继续并使用通过显式选择忽略该建议,而继续运行安装程序将安装为 sa 登录密码为空密码为空将会带来安全风险,因此不推荐使用。无论在哪一种身份验证模式下使用,则显示此对话框。

    注意立即进行密码更改后,即使将失败安装仍更改密码。
  • 应用了 service pack 时,可能会遇到一个 向后兼容性检查表 警告对话框任何向后兼容性问题,您的显示。若要了解有关此对话框的详细信息,请参阅本部分中稍后介绍的向后兼容性检查表对话框。
  • 显示一个对话框,如果它检测到任何数据库或文件组不可写。此位置复制拓扑的一部分如果有任何这些数据库或文件组,您可以:
    • 停止在安装过程,使这些对象可写,然后重新启动安装程序。
    • 继续当前 SP3a 安装过程,并在以后进行这些对象可写之后重新应用 SP3a。

      注意仅当应用 SP3a 不可写的数据库或文件组的复制拓扑的一部分时,在前面的步骤是必需的。 有关详细的信息,请参阅只读数据库或文件组的节 3.12 应用 SP3a。
  • 显示有关如何启用新的错误报告功能 SP3a 中包含的信息的 错误报告 对话框。有关错误报告,有关的详细信息,请参阅节 5.10 错误报告。
  • 如有必要,请更新 MDAC 组件。有关详细的信息,请参阅节 5.5.1 更新 Microsoft 数据访问组件。
  • 替换现有 SQL Server 2000 文件具有 SP3a 的文件
  • 运行 TRANSACT-SQL 脚本文件来更新的系统存储过程
  • 显示一个选项,以重新启动计算机最终对话框中的,如果安装程序确定需要重新启动。


身份验证模式对话框

身份验证模式对话框中不会默认为用于安装当前的设置。对话框框默认值是:
  • 在运行 Windows 98 或 Windows Millennium 版的计算机上默认设置是混合模式身份验证 (唯一身份验证模式,在这些操作系统的系统上受支持)。对话框将提示您指定一个为 sa 登录密码。如果您指定密码,安装程序会更改 sa 登录密码。如果保留密码为空,安装连接而不更改密码
  • 在运行 Windows NT 4.0 或 Windows 2000 的计算机上默认设置为 Windows 身份验证。使用对话框中使用 sa 登录密码不是空白的 Windows 身份验证模式或混合模式切换。

    注意在更改身份验证模式或 sa 登录密码之前, 确保此更改不会影响现有的应用程序。例如对于您从使用混合模式身份验证使用仅 Windows 身份验证更改实例的 SQL Server,如果试图使用 SQL Server 身份验证进行连接的现有应用程序不能连接直到身份验证模式设置为 Windows 身份验证。此外,如果更改了 sa 登录密码的应用程序或管理的进程使用旧密码不能连接直到它们被配置为使用新密码。
重要出于安全原因您永远不应具有 sa 登录的密码为空。

安装程序将一条记录中 Sqlsp.log 文件执行的操作。在 Windows 中存储此日志文件计算机在其运行安装程序的目录。如果您升级多个实例,此日志中记录只在最新的升级。

向后兼容性检查表对话框

向后兼容性检查表 对话框中列出了应用 service pack 时,您就可能会遇到的向后兼容性问题。核对清单中出现的向后兼容性问题的 SQL Server 2000 正在升级的实例的配置而异。

下面的向后兼容性问题可能在此对话框加以解决:
  • 当从 SP2 或更早版本升级,SP3a 升级 Microsoft 搜索服务,并自动重新生成全文目录,对于使用该服务的所有应用程序。在重建,期间全文功能可能不是完全可用。继续安装之前,您必须选中此复选框。 有关详细的信息,请参阅节 5.1.5 全文目录是重建后安装完毕。
  • 在应用服务包之前,必须升级您 SQL Server 2000 主服务器/目标服务器的配置。SP3a 中引入的增强可以只与 SQL Server 2000 SP3 或 SP3a 运行的服务器兼容。继续安装之前,您必须选中此复选框。有关详细的信息,请参阅主/目标服务器的配置更改的 5.4.2 节。
  • 跨数据库所有权链接是默认情况下关闭该服务包中。安装后,您可以启用跨数据库所有权链接的每个数据库。选择此可选复选框,您可以允许跨数据库所有权链接的所有数据库。有关详细的信息,请参阅节 5.1.11 跨数据库所有权链接。

    注意建议不要启用跨数据库所有权链接的所有数据库。

    注意如果您以前已启用跨数据库所有权链接 SP3 的预发行版本 (生成 8.00.760) 前您需要安装 SP3a 时再次启用它。

3.6 安装 Analysis Services SP3a

下面的信息仅适用于 Analysis Services。

要安装 Analysis Services SP3a,请从下列位置之一运行 Setup.exe:
  • 包含从 SQL2KASP3.exe 提取的 Analysis Services SP3a 文件目录中的 Msolap\Install 子目录中。
  • SP3a 光盘上 Msolap\Install 目录。
安装程序然后执行以下任务:
  • 打开一个设置对话框,提示您有关的信息。 有关错误报告的详细信息请参阅 5.10 错误报告。
  • 显示有关如何启用新的错误报告功能 SP3a 中包含的信息的错误报告对话框。
  • 复制所需的文件并完成安装


其他 Analysis Services 安装问题

安装 Analysis Services SP3a 后也必须升级到 SP3 或 SP3a 的远程管理使用任何计算机。否则,在尝试远程连接通过分析管理器时收到以下错误消息:

无法连接到服务器 (服务器名称),或在注册表不是此服务器的 OLAP 管理员组的成员。

元数据服务已添加新的专用的角色名为 RepositoryUser,可使用在 msdb 数据库中的访问和更新存储库信息。RepositoryUser 角色具有创建、 读取、 更新、 删除,和执行在 msdb 存储库的权限。在 public 角色被更换为此新的角色并不再有此资源库中的权限。如果满足以下条件,是 OLAP 管理员 组必须添加到 RepositoryUser 角色,以便应用服务包后,此组的成员可以访问存储库:
  • 知识库是元数据服务的格式。
  • 存储库使用 msdb 数据库。
  • OLAP 管理员 组以前用来访问在存储库的 公共 角色。
注意此更改也会影响远程服务器的访问元数据服务知识库已升级到 SP3 或 SP3a 的服务器上。必须将远程服务器登录名添加到 RepositoryUser 角色。

注意在还原之前要升级到 SP3 或 SP3a 备份 repositorythat 一个元数据服务之前 OLAP 管理员组必须添加到 RepositoryUser 角色 ; 否则,还原操作将失败。

有关 RepositoryUser 角色 的详细信息,请参阅节 5.6.3 新建 RepositoryUser 角色用于访问知识库信息。

如果 Analysis Services 数据文件夹位于其他的计算机不是在其上运行分析服务器,则必须修改文件夹权限运行 SP3a 安装程序之后。有关详细的信息,请参阅节 5.2.10 权限必须修改上一个远程数据文件夹。
3.7.2 MSDE 2000 SP3a 的安全注意事项
下面的信息仅适用于桌面引擎 (MSDE 2000)。

桌面引擎 SP3a 包含一组完整的安装或升级 SQL Server 2000 桌面引擎的实例所需的文件 (MSDE 2000)。您可以执行所有的 MSDE 2000 安装程序操作与将文件从桌面引擎 SP3a,倘若您拥有安装或升级的 MSDE 2000 实例的许可证。有关 MSDE 2000 授权的详细信息请参阅 MSDE 2000 的使用。

您可能无法应用桌面引擎 SP3a 的该安装程序已安装的 MSDE 2000 实例要实用程序的一个 application.You 必须联系应用程序提供程序的修补程序文件,可用于升级的 MSDE 2000 这些实例。有关如何确定是否 MSDE 2000 实例降到此的类别的说明,请参阅节 2.1 下载并提取桌面引擎 (MSDE 2000) SP3a。
以下各节提供了有关 MSDE 2000 SP3a 安装的重要背景信息:
  • 3.7.1 MSDE 2000 SP3a 的先决条件
  • 3.7.2 MSDE 2000 SP3a 的安全注意事项
  • 3.7.3 MSDE 2000 安装程序参数
以下各节介绍升级到 SP3a 的现有的 MSDE 实例或安装 MSDE 2000 SP3a 的新实例的最常见的情况:
  • 3.7.4 升级到 SP3a 的现有的 MSDE 2000 的实例
  • 3.7.5 安装 MSDE 2000 SP3a 的新的实例
  • 3.7.6 升级到 MSDE 2000 SP3a 的 MSDE 1.0
如果您需要的详细信息,MSDE 2000 SP3a 安装程序的文档的主要来源处于 SQL Server 2000 丛书联机 (更新-SP3)。没有对 MSDE 2000 SP3 和 SP3a 完全不反映 SQL Server 2000 丛书联机 (更新-SP3) 的某些更改,这些功能涵盖此自述文件中。有关安装 SQL Server 2000 丛书联机 (更新-SP3) 的详细信息请参阅部分中 1.6 更新丛书联机文档是否可用。
3.7.1 MSDE 2000 SP3a 的先决条件
下面的信息仅适用于桌面引擎 (MSDE 2000)。

以下要求将应用于 SQL Server 2000 桌面引擎 (MSDE 2000) SP3a 的安装。

在升级 MSDE 2000 时必须单独将桌面引擎 SP3a 应用于 MSDE 2000 的每个实例中。

Microsoft 不支持配置的注意,有 16 个以上的数据库引擎在一台计算机上的实例。这包括 SQL Server 6.5、 7.0 SQL Server、 SQL Server 2000、 MSDE 1.0 和 MSDE 2000 的实例。

通过运行 Setup.exe,始终启动 MSDE 2000 安装程序。不要通过直接将 MSDE 2000 的.msi 文件的一个通过双击 MSDE 2000.msi 文件中的一个调用如启动安装程序。您必须从命令提示符下运行安装程序,并指定要安装或升级的 MSDE 的任何实例的参数。有关所需的参数的详细信息,请参阅部分通过 3.7.6 3.7.2。

如果您使用终端服务,则会出现问题连接尝试升级到 SP3a 的现有的 MSDE 实例或安装的 MSDE 2000 SP3a 的新实例。如果遇到问题,请从本地计算机重新启动安装程序。

您必须知道您正在安装或升级使用 MSDE 2000 SP3a 安装的 MSDE 实例的实例名称。如果在安装或升级的 MSDE 命名的实例,您必须使用 INSTANCENAME 参数指定实例名称。如果不指定 INSTANCENAME,安装在该计算机上的 MSDE 默认实例上操作。要安装或升级的 MSDE 2000 实例的指定.msi 安装包文件所需的用户使用的 MSDE 2000 安装 SP3 之前的版本中。在 SP3 和更高版本的安装程序安装管理的.msi 文件,并不需要指定.msi 文件的升级或全新安装。

您可以从您的硬盘、 网络的共享或 CD-ROM 运行 MSDE 2000 SP3a 安装程序。当升级到 SP3a 的 MSDE 2000 实例的您可以只运行安装程序从网络共享或 CD-ROM 如果原始文件用于安装的 MSDE 2000 实例在它们原始的安装过程中所占用的位置仍然存在。如果原始安装已从光盘,MSDE 2000 SP3a 安装程序将在升级过程中请求原始安装光盘。如果原始文件将不再在其原始位置,或者原来的 CD-ROM 不可用必须将 MSDE 2000 SP3a 文件复制到您的硬盘,并从那里运行安装程序。

如果创建了自己的安装 SP3a 光盘在 CD-ROM 上的卷标必须 SQL2KSP3。您是否创建一个 CD-ROM 的分发作为您的应用程序的组件的桌面引擎的独立软件供应商 (ISV) 必须与该 VolumeLabel 相同 CD-ROM 卷标的 Windows 安装程序包 (*.msi) Media 表中的属性。
只有当您使用 Windows 安装程序版本 2.0.2600.0 或升级 Windows 安装程序所需的 later.If,SP3a 包括升级 Windows 安装程序所需文件,您可以从 CD-ROM 安装桌面引擎的升级。

升级 Windows 安装程序:
  1. 使用 Windows 资源管理器导航到 \MSDE\MSI 文件夹在任一 SQL Server 2000 SP3a 光盘,或从 SQL2KDeskSP3.exe 中提取出来的文件夹中。
  2. 运行 InstMsi20.exe。
  3. 当系统提示,重新启动计算机。
3.7.2 MSDE 2000 SP3a 的安全注意事项
下面的信息仅适用于桌面引擎 (MSDE 2000)。

MSDE 2000 安装程序的行为已更改 SP3a 中,以便在默认设置会导致配置更安全。

桌面引擎 SP3a 更改 DISABLENETWORKPROTOCOLS 安装程序参数所指定的网络连接支持的 MSDE 2000 实例配置的默认行为。如果在另一台计算机上运行的应用程序将连接到您的实例的 MSDE 2000,实例具有不需要的网络支持,很明智关闭未使用的资源。SP3a 将关闭网络支持默认情况下安装的 MSDE 2000 的新实例时。如果安装的 MSDE 2000 SP3a 实例时,您可以禁用网络支持,您可以以后重新配置启用了支持实例。有关详细信息,关于禁用和还原网络访问,请参阅 Microsoft 知识库文章 814130。

默认状态下,MSDE 2000 SP3a 安装程序将不安装新的 MSDE 2000 实例,除非 SAPWD 参数用于指定一个强 sa 密码。默认状态下,MSDE 2000 SP3a 安装程序将不升级现有的 MSDE 2000 实例除非已分配给该 sa 一个保密性强的密码登录。应该将一个保密性强的密码分配给 sa 登录中,即使升级一个现有实例,除非应用程序使用您的 MSDE 实例以某种方式取决空的 sa 密码中。即使在 Windows 身份验证模式下运行时的 MSDE 2000 实例,sa 登录将被立即激活,如果实例以往任何时候都以混合模式切换。未经授权的访问,可以使用了 null、 空白、 简单,或众所周知的 sa 密码。如果希望升级到 SP3a 的 MSDE 2000 实例之前分配一个强 sa 密码,请参阅 Microsoft 知识库文章 322336。

只要有可能,为获得更高的安全性与您的 MSDE 2000 安装使用 Windows 身份验证。如果从混合模式切换到 Windows 身份验证模式,请考虑:
  • 使用 MSDE 2000 应用程序可以运行使用 Windows 身份验证。
  • 您已定义需要连接到该实例的所有用户的 Windows 身份验证登录的名。有关添加登录的详细信息请参阅在 $ SQL Server 2000 丛书联机中 添加 Windows 用户或组
  • MSDE 2000 的实例未运行 Windows 98 或 Windows ME.上
有关以 Windows 身份验证模式从混合模式更改 MSDE 2000 实例的详细信息,请参阅 Microsoft 知识库文章 322336。
3.7.3 MSDE 2000 安装程序参数
下面的信息仅适用于桌面引擎 (MSDE 2000)。

MSDE 2000 是用于分布式应用程序,应用程序的安装程序安装。MSDE 2000 不具有交互式安装程序。安装程序机制的 MSDE 2000 被为了与最终用户任何所需的交互由应用程序安装程序由一个的应用程序安装实用程序调用。MSDE 2000 具有两种安装机制:
  • 在命令提示符下设置实用程序。该安装程序实用程序通常由一个的应用程序安装实用程序调用,但也可以从命令提示符窗口中运行。MSDE 2000 安装程序实用程序不具有图形用户界面的用户可以通过它控制实用程序的行为。 而是,此实用程序接受一组定义该实用程序应采取什么操作的参数。
  • Windows 安装程序的合并模块的集合。开发人员编写基于 Windows 安装程序的安装实用程序可以代码安装 MSDE 2000 实例,方法是使用 MSDE 2000 合并模块及其应用程序设置。 开发人员可以通过指定安装包属性对应于 MSDE 2000 安装实用程序的参数来控制已安装的实例的配置。
用户可以使用命令提示符下以任一升级的现有实例的 MSDE 或安装的 MSDE 2000 的新实例的 MSDE 2000 安装程序实用程序。用户通过指定参数来控制 MSDE 2000 安装程序的行为。设置参数可以指定两种方法之一:
  • 在命令行。
  • 在读取安装应用程序的.ini 文件。
大部分所支持的 MSDE 2000 SP3a 版本的安装程序参数记录在主题中 SQL Server 2000 丛书联机 (更新-SP3) 的"自定义桌面引擎 Setup.exe"中。有关安装 SQL Server 2000 丛书联机的详细信息请参阅部分中 1.6 更新丛书联机文档是否可用。

您必须将值括起来为 MSDE 安装参数,如果指定值具有特殊的字符,如空格的双引号引起来。否则,引号都是可选的。

这些 MSDE 2000 SP3a 安装参数不是记录在 SQL Server 2000 丛书联机 (更新-SP3),或行为不同于联机丛书中的说明。
收起该表格展开该表格
参数名说明
ALLOWXDBCHAINING = 1启用跨数据库所有权链接。有关详细的信息,请参阅节 5.1.11 跨数据库所有权 Chaining。
SAPWD = sa_password指定要安装的 MSDE 2000 的新实例时分配给 sa 登录密码。当您升级现有的 MSDE 2000 实例,因此您应该确保 sa 登录在升级之前使用了强密码时,将被忽略 SAPWD。即使是使用 Windows 身份验证模式,始终应指定一个保密性强的 sa 密码。 同时运行 Setup.exe 时不写入安装日志文件 SAPWD 属性,它是如果您安装使用合并模块。
/upgradesp {SQLRUN | [<msipath>] SqlRunXX.msi} 指定安装程序将升级到 SP3a 的 MSDE 2000 的一个现有实例。对于 SP3 和更高版本中,此开关将替换/p 开关所支持的早期版本的安装程序。不要使用/p 开关 SP3 或更高版本。当升级到 SP3a,您将不再需要指定用于安装现有的 MSDE 2000 实例的.msi 文件。大多数用户只需指定的 SQLRUN,在这种情况下,MSDE 2000 SP3a 设置实用程序确定要使用哪个.msi 文件。当您无需指定一个 INSTANCENAME 指定 SQLRUN 时,安装程序将升级 MSDE 2000 默认的实例。如果您指定 SQLRUN 和一个 INSTANCENAME,安装程序将升级使用 INSTANCENAME 参数指定该实例。您在指定的 MSDE 2000.msi 安装包文件名称时安装程序将升级与合并模块名称相同的最初安装在计算机上的任何一个实例。例如对于您指定 SqlRun01.msi,如果安装程序将升级的 MSDE 2000 的任何一个实例原来安装使用 SqlRun01.msi。MSIPath 是到存放.msi 文件的文件夹路径。MSIPath 默认 Setup\。例如指定 /upgradesp 的请参阅部分中 3.7.4 升级现有实例的 MSDE 2000 到 SP3a
UPGRADEUSER = AnAdminLogin指定要升级的 MSDE 1.0 或使用 SQL Server 身份验证的 MSDE 2000 实例时使用该登录名。该登录名必须是 sysadmin 固定服务器角色的成员。仅当您指定 SECURITYMODE 时才使用此参数 = SQL 升级的 MSDE 实例时。
UPGRADEPWD = AdminPassword指定为升级桌面引擎使用 SQL Server 身份验证时,在 $ UPGRADEUSER 中指定的登录密码。
桌面引擎 SP3 中引入一个新的 DISABLENETWORKPROTOCOLS 参数。在桌面引擎 SP3a,是更安全,默认情况下更改 DISABLENETWORKPROTOCOLS 的行为。

这些是 DISABLENETWORKPROTOCOLS SP3a 中的行为。
收起该表格展开该表格
DISABLENETWORKPROTOCOLS 值升级现有的实例安装新实例
1实例配置与所有的服务器网络库被禁用。实例配置与所有的服务器网络库被禁用。
0保留现有的服务器网络库配置。实例配置了默认的服务器网络库和已启用的地址。
参数未指定,或为 0 或 1 之外的其他任何值保留现有的服务器网络库配置。实例配置为使用所有的服务器网络库被禁用。
在 SP3,DISABLENETWORKPROTOCOLS 具有行为与 SP3a 进行比较的两个不同之的处:
  • 当安装新的实例使用 SP3 和 DISABLENETWORKPROTOCOLS 是未指定或设置为 0 或 1,之外的其他值则默认网络库和已启用的地址与安装实例。在 SP3a,网络库处于禁用状态。
  • 只要对于 MSDE 2000 SP3 的实例禁用所有的网络库,该实例将仍使用 UDP 端口 1434年。在 SP3a,该实例将不会使用该配置中的 UDP 端口 1434年。详细的信息,请参阅部分中 5.1.15 UDP 端口 1434 上操作。
默认网络库配置有关的详细信息,请参阅主题控制网络库和通信中的"地址"SQL Server 2000 丛书联机。

您是否将 MSDE 2000 合并模块 (.msi 文件) 合并到 Windows 安装程序安装程序的开发人员可以为.msi 文件中的属性来指定上述设置参数。桌面引擎 (MSDE 2000) SP3a 提供以支持使用合并模块的现有应用程序的合并模块。对于新的应用程序安装程序实用程序写入调用而不是直接使用 MSDE 2000 合并模块的 MSDE 2000 安装程序实用程序。
收起该表格展开该表格
参数名合并模块属性
ALLOWXDBCHAININGSqlAllowXDBChaining
DISABLENETWORKPROTOCOLSSqlDisableNetworkProtocols
SAPWDSqlSaPwd
UPGRADEUSERSqlUpgradeUser
UPGRADEPWDSqlUpgradePwd
有关与其他安装参数相对应的合并模块属性请参阅主题"使用在 SQL Server 桌面引擎合并模块"中 SQL Server 2000 丛书联机。

请求安装日志

如果遇到问题,运行安装程序,并且需要一个详细的日志,以帮助调试指定/L * v <logfilename>。 <logfilename>是一个日志文件的名称,安装程序将记录所有其操作。如果不指定路径作为名称的一部分,在当前文件夹中创建该日志文件。如果要执行安装程序从 SQL Server 2000 SP3a 光盘,必须在磁盘上指定的文件夹的完整路径。本示例创建一个日志文件 MSDELog.log C:驱动器的根文件夹中:

安装程序 /upgradesp sqlrun DISABLENETWORKPROTOCOLS = 1/L * v C:/MSDELog.log
3.7.4 升级到 SP3a 的现有的 MSDE 2000 的实例
下面的信息仅适用于桌面引擎 (MSDE 2000)。
本节中的示例将升级到 SP3a 的 MSDE 2000 的一个现有实例,并还禁用该实例的 MSDE 2000 的网络连接。如果该实例必须接受来自其他计算机上运行的应用程序的连接,请不要指定 DISABLENETWORKPROTOCOLS 参数。
本节中的该示例假定 sa 登录了强密码。关于 sa 登录密码的详细信息,请参阅部分 3.7.2 的 MSDE 2000 SP3a 的安全注意事项。

升级 SQL Server 2000 桌面引擎
  1. 打开命令提示窗口。
  2. 在命令提示符下使用 cd 命令定位到包含 MSDE 2000 SP3a 设置实用程序文件夹:
    cd c:\MSDESP3aFolder\MSDE
    其中 c:\MSDESP3aFolder 是要在其中解压缩 MSDE 2000 SP3a 文件文件夹路径,或是 SQL Server 2000 SP3a 光盘上的桌面引擎 SP3a 文件夹。
  3. 执行下列命令之一:
    • 对于默认实例使用 Windows 身份验证模式,执行:

      安装程序 /upgradesp sqlrun DISABLENETWORKPROTOCOLS = 1
    • 对于命名实例使用 Windows 身份验证模式,执行:

      安装程序 /upgradesp sqlrun INSTANCENAME = InstanceName DISABLENETWORKPROTOCOLS = 1
    • 对于默认实例,使用混合模式 (其中 AnAdminLogin 是 sysadmin 固定的服务器角色的成员),执行:

      安装程序 /upgradesp sqlrun SECURITYMODE = SQL UPGRADEUSER = AnAdminLogin UPGRADEPWD = AdminPassword DISABLENETWORKPROTOCOLS = 1
    • 对于命名实例使用混合模式 (其中 AnAdminLogin 是 sysadmin 固定的服务器角色的成员),执行:

      安装程序 /upgradesp sqlrun INSTANCENAME = InstanceName SECURITYMODE = SQL UPGRADEUSER = AnAdminLogin UPGRADEPWD = AdminPassword DISABLENETWORKPROTOCOLS = 1
重要如果您在安装过程中使用.ini 文件,可以避免在.ini 文件中存储凭据。

注意升级运行 Windows 98 或 Windows Millennium 版的计算机上的桌面引擎时, 启动安装程序之前,必须停止您要升级的桌面引擎的实例。
3.7.5 安装 MSDE 2000 SP3a 的新的实例
下面的信息仅适用于桌面引擎 (MSDE 2000)。

本节中的示例将安装已禁用其网络连接配置的 MSDE 2000 SP3a 的新实例。 如果该实例必须接受来自其他计算机上运行的应用程序的连接,还指定 DISABLENETWORKPROTOCOLS = 0。

这些示例安装实例使用的排序规则和文件位置的所有配置项的默认设置。该配置可以通过设置参数 排序规则、 DATADIR, 和 $ TARGETDIR 进行控制。您可以使用安装程序指定的配置参数有关的详细信息,请参阅 SQL Server 2000 丛书联机 (更新-SP3) 中的"自定义桌面引擎 Setup.exe"。 有关安装 SQL Server 2000 丛书联机 (更新-SP3) 的详细信息请参阅部分中 1.6 更新丛书联机文档是否可用。

安装桌面引擎的新实例
  1. 打开命令提示窗口。
  2. 在命令提示符下使用 cd 命令定位到包含 MSDE 2000 SP3a 设置实用程序文件夹:

    cd c:\MSDESP3aFolder\MSDE
  3. 其中 c:\MSDESP3aFolder 是以在其中解压缩 MSDE 2000 SP3a 文件文件夹路径或桌面引擎 SP3a SQL Server 2000 SP3a 光盘上的文件夹。
  4. 执行下列命令之一:
    To install a default instance configured to use Windows Authentication Mode, execute: 
    setup SAPWD="AStrongSAPwd"
    Where AStrongSAPwd is a strong password to be assigned to the sa login.
    
    To install a named instance configured to use Windows Authentication Mode, execute: 
    setup INSTANCENAME="InstanceName" SAPWD="AStrongSAPwd"
    Where AStrongSAPwd is a strong password to be assigned to the sa login and InstanceName is the name to be assigned to the instance.
    
    To install a default instance configured to use Mixed Mode, execute: 
    setup SAPWD="AStrongSAPwd" SECURITYMODE=SQL
    Where AStrongSAPwd is a strong password to be assigned to the sa login.
    
    To install a named instance configured to use Mixed Mode, execute: 
    setup INSTANCENAME="InstanceName" SECURITYMODE=SQL SAPWD="AStrongSAPwd"
    Where AStrongSAPwd is a strong password to be assigned to the sa login and InstanceName is the name to be assigned to the instance.
    
    
重要如果您在安装期间使用.ini 文件,避免将凭据存储在.ini 文件中。

重要即使该实例被配置为使用 Windows 身份验证模式,始终指定一个具有强保密性的密码,为 sa 登录。
3.7.6 升级到 MSDE 2000 SP3a 的 MSDE 1.0
下面的信息仅适用于桌面引擎 (MSDE 2000)。

本节中的示例将 MSDE 2000 SP3a,要升级的 MSDE 1.0 一个现有实例,并还禁用该实例的网络连接。如果该实例必须接受来自其他计算机上运行的应用程序的连接,请不要指定 DISABLENETWORKPROTOCOLS 参数。

MSDE 1.0 以作为的 MSDE 2000 默认实例相同的方式运行,并且始终被升级的 MSDE 2000 默认实例。

要从桌面引擎版本 1.0 升级
  1. 打开命令提示窗口。
  2. 在命令提示符下使用 cd 命令定位到包含 MSDE 2000 SP3a 设置实用程序文件夹:
    cd c:\MSDESP3aFolder\MSDE
  3. 其中 c:\MSDESP3aFolder 是以在其中解压缩 MSDE 2000 SP3a 文件文件夹路径或桌面引擎 SP3a SQL Server 2000 SP3a 光盘上的文件夹。

    执行下列命令之一:
    • 在使用 Windows 身份验证模式时执行:

      安装程序升级 = 1 DISABLENETWORKPROTOCOLS = 1
    • 在使用 (其中 AnAdminLogin 是 sysadmin 固定的服务器角色的成员) 的混合模式时执行:

      安装程序升级 = 1 SECURITYMODE = SQL UPGRADEUSER = AnAdminLogin UPGRADEPWD = AdminPassword DISABLENETWORKPROTOCOLS = 1
注意如果您使用 BLANKSAPWD = 1,不要求您指定 SECURITYMODE = SQL 或 UPGRADEUSERUPGRADEPWD。

警告:强烈建议不要使用空白密码。

重要如果您在安装过程中使用.ini 文件,可以避免在.ini 文件中存储凭据。
3.7.7 重新分发的 MSDE 2000 SP3a
下面的信息仅适用于桌面引擎 (MSDE 2000)。

桌面引擎 SP3a 包含与应用程序,重新分发 MSDE 2000 所需的文件的所有提供应用程序供应商已分发的 MSDE 2000 的许可证。您可以分发该桌面引擎 SP3a SQL Server 2000 丛书联机 (更新 SP3) 中记录的特定于 SP3a 的更改的文件包括以下各节中,请执行下列操作:
  • 3.7.2 MSDE 2000 SP3a 的安全注意事项
  • 3.7.3 MSDE 2000 安装程序参数
有关安装 SQL Server 2000 丛书联机 (更新-SP3) 的详细信息请参阅部分中 1.6 更新丛书联机文档是否可用。

分发桌面引擎 SP3a 修补程序

如果应用程序中有一个基于 Windows 安装程序的安装实用程序,它可以通过使用 MSDE 2000 合并模块来安装 MSDE 2000 的实例。桌面引擎 (MSDE 2000) SP3a 提供以支持使用合并模块的现有应用程序的合并模块。对于新的应用程序安装程序实用程序写入调用而不是直接使用 MSDE 2000 合并模块的 MSDE 2000 安装程序实用程序。

供应商选择安装的 MSDE 2000 实例使用 MSDE 2000 合并模块还必须提供所有的后续 MSDE 2000 修补程序为其客户。使用合并模块安装的 MSDE 2000 的实例的 Windows 安装程序来标记与产品代码 GUID 与应用程序关联。只是修补程序文件也包含应用程序的产品代码 GUID 可以修补那些的 MSDE 2000 实例。只有所产生的应用程序供应商联系的修补程序文件将包含正确的产品代码。由 Microsoft 提供了桌面引擎 (MSDE 2000) 的服务包不能应用于这些实例。该应用程序的供应商联系,必须生成使用桌面引擎 SP3a 文件的修补程序文件和分发其 MSDE 客户需要 SP3a 中的修复的任何这些修补程序文件。

有关创建修补程序包的详细信息请参阅包含与在 Windows 安装程序软件开发工具包 (SDK),可从 the Microsoft Platform SDK Web site 下载的文档。

如果一个应用程序的安装实用程序通过调用 MSDE 2000 安装程序实用程序安装的 MSDE 2000 实例,使用 MSDE 2000 产品代码 GUID 进行标记的 MSDE 2000 实例。客户可以修补程序使用标准的 Microsoft MSDE 2000 服务包文件这些实例。该应用程序的供应商联系,可以选择分发 MSDE 2000 SP3a 下列可选项之一:
  • 指示他们的客户从 SQL Server 2000 SP3a 下载页或 SQL Server 2000 SP3a 光盘安装桌面引擎 SP3a。
  • 下载 SQL2KDeskSP3.exe 下载文件,并为其客户如何应用服务包的说明与分发的。
  • 使用桌面引擎 SP3a 文件生成将由应用程序安装的 MSDE 2000 的实例安装 SP3a 一个服务包的应用程序实用程序。
应用程序的供应商选择以指示他们的客户直接应用 SP3a 应该开发一的组客户的需要自定义的指令。

为其客户的服务包说明 Microsoft 应用程序团队准备的 MSDE 2000 的类型的示例,请参阅此 Microsoft MSDE Applications Web page
3.7.8 MSDE 2000 SP3a 文件
下面的信息仅适用于桌面引擎 (MSDE 2000)。

所有桌面引擎 SP3a 安装文件和文件夹都位于 \MSDE 文件夹:
  • 上 SQL Server 2000 SP3a 光盘
  • 包含从 SQL2KDeskSP3.exe 的 \MSDE 提取的服务包文件的目录中文件夹保存 SP3readme.htm 文件、 readme.txt 文件、 license.txt 文件和可执行文件为安装程序实用程序。它还具有以下子文件夹:
  • \Msi: 包含所需安装 Windows 安装或升级 Windows 安装程序,它是否早于 2.0.2600.0 的可执行文件。
  • \MSM: 包含所需的合并模块安装程序的合并模块。
  • \Setup: 包含.msi 安装包文件所需的 MSDE 2000 安装程序安装的 MSDE 2000 SP3a 或升级到 SP3a,MSDE 2000 的现有实例 msp 修补程序软件包文件的新实例和 sqlrun.cab cab 文件包含安装程序安装文件。
有关使用桌面引擎的合并模块的说明,请参阅"使用 SQL Server 桌面引擎合并模块"SQL Server 联机丛书中的主题。

如果应用程序安装在电话 MSDE 2000 安装程序生成具有此结构和组 (其中 MSDEInstallFolder 表示一个示例的文件夹名称) 的文件的文件夹:

MSDEInstallFolder

复制这些文件从桌面引擎 SP3a \MSDE 文件夹中: 安装程序、 Setup.ini、 Setup.rll,和 sqlresld.dll。

MSDEInstallFolder\Msi

复制所有文件从桌面引擎 SP3a \MSDE\Msi 文件夹中。

MSDEInstallFolder\Setup

复制所有文件从桌面引擎 SP3a \MSDE\Setup 文件夹中。

然后,您可以执行 Setup.exe 安装或升级的 MSDE 2000 SP3a 的实例。

如果 Windows 安装程序在上尚未安装,或早于经 MSDE 2000 SP3a 安装该版本是版本,则安装程序将在升级 Windows 安装程序文件使用 MSDEInstallFolder\Msi 文件夹中。

3.8 重新启动服务

以下信息适用于所有组件。

当安装程序完成时,它可能会提示您重新启动系统。在系统重新启动后 (或不请求重新启动安装程序完成后),使用控制面板中的服务应用程序,请确保您应用了 service pack 之前停止任何服务正在现在运行。这包括服务 (如 MS DTC 和 Microsoft 搜索、 MSSQLServer、 MSSQLServerOLAPService,和 SQLServerAgent 服务或实例特定的等价。

它是明智还备份数据库升级后的 母版msdb 数据库,这一次。

3.9 重新启动应用程序

以下信息适用于所有组件。

重新启动前运行 service pack 关闭该应用程序安装程序。

3.10 在故障转移群集安装

下面的信息仅适用于故障转移群集的一部分的 SQL Server 2000 组件。

若要安装故障转移群集上的服务包
  1. 如果已具有 SQL Server 资源上的依赖项中添加了任何资源,这些依存资源必须删除或前脱机然后再安装 SP3a。
  2. 从拥有该组包含您要升级的虚拟服务器的节点运行该服务包。如果不这样做,SP3a 的安装可能会导致这些依存资源失败 over.This 安装故障转移群集中的所有节点上的服务包文件。
  3. 在设置对话框中键入要升级的虚拟服务器的名称。
  4. 在安装过程中保持联机的群集中的所有节点。这可以确保升级应用于群集的每个节点。
  5. 如果您删除相关性或所用资源脱机上面,第 1 步中重新添加依赖项或使资源联机。
注意安装程序可能要求重新启动的故障转移群集节点。这将替换与更新的文件的安装过程中正在使用的文件。

如果您要升级到虚拟服务器的 (非群集) 的默认实例 SQL Server,首先,您必须升级到一个虚拟实例的默认 (非群集) 实例,然后应用 SP3a.For 有关升级的详细信息,请参阅 SQL Server 联机丛书中的"如何从默认实例升级到默认群集实例 SQL Server 2000 (设置) 的"。

有关故障转移群集上安装 SP3a 的附加信息,请参阅知识库文章 811168。

如果您需要重新生成一个节点故障转移群集中的执行以下步骤
  1. 重建该节点故障转移群集中。有关重建节点的详细信息请参阅 SQL Server 联机丛书中的"如何从方案 1 中的故障转移群集失败中恢复"。
  2. 运行原始的 SQL Server 2000 安装程序,以将该节点添加回故障转移群集。
  3. 在新添加的节点上运行 SP3a 安装程序。这将更新 SP3a 只在新的节点中的二进制文件。
注意如果您运行安装程序从该节点运行虚拟服务器,您必须重新 SP3a 应用到所有节点。您还必须重新运行数据库升级脚本。

当在群集上安装 Analysis Services SP3a,必须单独升级每个实例。

安装 SP3a Analysis Services 群集上
  1. 在故障转移节点上安装 SP3a。
  2. 故障转移到新升级的节点。
  3. 重复第 1 步和第 2 步,直到升级群集中的所有实例。

3.11 已复制的服务器上安装

以下信息只适用于复制拓扑的一部分的 SQL Server 2000 组件:
  • 在升级发布服务器之前,您必须升级分发服务器。
  • 对于基于具有只读的订阅服务器的事务复制的复制拓扑可以升级之前或之后在发布服务器和分发服务器上的订阅服务器。
  • 对于基于合并复制或带有更新订阅服务器的事务复制的复制拓扑中,您必须升级订阅服务器上之后在发布服务器和分发服务器。
注意特别是在合并复制中的很多情况下在分发服务器和发布服务器相同的服务器上并同时升级。

安装 SP3a 的作为发布服务器和订阅服务器在服务器上

对于基于合并复制或事务复制与更新,包括一个或多个服务器作为发布同时订阅服务器和服务器 (或分发服务器) 的订阅服务器的复制拓扑可能需要暂停系统 (也就停止所有更新),并同时升级所有服务器。

示例 1: 拓扑的要求同时升级

下表包括同时发布和订阅在订阅服务器上允许更新的发布服务器。如所述,前面必须执行升级的顺序分发服务器,发布服务器、 订阅服务器上为允许在 Subscriber.This 顺序更新要求您在服务器 A 首先升级为合并发布和服务器 B 首先为事务性发布的更新订阅服务器的拓扑。在这种情况下,您必须停止系统,并同时升级服务器。
收起该表格展开该表格
服务器 A服务器 B
对于合并复制发布服务器/订阅对于合并复制订阅服务器
对于事务复制与更新的订阅服务器发布服务器/订阅事务复制的更新
示例 2: 允许顺序升级的拓扑。

在此的示例可以升级服务器 A 首先因为只读事务发布允许在发布服务器/订阅之前升级订阅服务器。
收起该表格展开该表格
服务器 A服务器 B
对于合并复制发布服务器/订阅对于合并复制订阅服务器
只读的事务复制的订阅服务器发布服务器/订阅为只读的事务复制的
其他的复制安装问题

重要升级到 SP3a 之前,确保 SQL Server 服务运行在其下是 sysadmin 固定的服务器角色的成员的 Windows 帐户。因为 SQL Server 服务帐户的环境下升级复制分发数据库,您必须执行此操作。升级到 SP3a 后, 您应从 系统管理员 角色中删除 Windows 帐户。

如果您正在使用合并复制的并且分发服务器位于另一台计算机或 $ 数据库实例 (远程分发) 上应用 SP3a 后必须生成新的快照。

SP3a 引入了对附加或还原复制数据库要求的更改。有关详细的信息请参阅附加或还原复制数据库的要求的 5.3.17 节更改。

SP3a 安装升级的复制拓扑成员的用户数据库。如果任何成员的复制拓扑结构数据库不可写到这些数据库应用 SP3a 必须使它们可写,然后 reapplySP3a 设置。有关使数据库成为可写的详细信息请参阅只读数据库或文件组的节 3.12 应用 SP3a。有关重新应用 SP3a 的信息,请参阅节 3.14 重新应用 SP3a。

复制的帐户的现有备份方案,可以将数据库还原到已知点,在出现故障的情况下在 SP3a 升级后。后应用 SP3a、 日志或完整数据库备份建议复制拓扑中包含的任何用户数据库。此的方法将失败复制数据库,如果您没有将数据库还原后重新应用 SP3a。

3.12 应用 SP3a 只读数据库或文件组

下面的信息仅适用于复制拓扑的一部分的 SQL Server 2000 组件。

不可写的数据库或文件组存在时, 安装程序将显示以下消息:

安装程序检测到一个或多个数据库和文件组不可写。

通常情况下,您可以忽略此警告,安装程序将继续执行。但是的任何不可写入安装日志中列出的数据库时的复制拓扑成员必须使这些数据库可写入并重新 SP3a 设置应用于 SQL Server 2000 的实例。

注意此消息不会影响无人参与的安装。有关无人参与安装的详细信息,请参阅节 4.1 无人参与安装。

注意在安装,设置使不可写的数据库和数据库的脱机或处于可疑状态之间没有区别。如果数据库或文件组中任一这些条件在安装过程中,您必须重新应用服务包。有关使数据库联机的详细信息请参见"附加和分离数据库"SQL Server 联机丛书中的主题。有关诊断可疑数据库的详细信息请参阅主题"服务器和数据库疑难解答"中 SQL Server 联机丛书。

若要应用 SP3a 到只读数据库
  1. 请使用 ALTER DATABASE 语句,如下所示: ALTER DATABASE 数据库设定 READ_WRITE 为可写只读数据库。
  2. 重复步骤 1 的所有只读数据库。
  3. 应用 (或重新应用) 该 service pack。
  4. 如果需要,使数据库为只读再次使用 ALTER 数据库,如下所示:

    ALTER DATABASE 数据库 SET READ_ONLY
若要应用 SP3a 到只读文件组
  1. 请将只读文件组可写,如下所示使用 ALTER DATABAS E,: ALTER 数据库数据库文件修改组 filegroup_name 读写
  2. 重复步骤 1 的所有只读文件组。
  3. 应用 (或重新应用) 该 service pack。
  4. 使该文件组,只能以只读方式再次使用 ALTER DATABASE、,如下所示:

    ALTER DATABASE 数据库修改文件组
    filegroup_name 只读
ALTER DATABASE 有关的详细信息,请参阅"ALTER DATABASE"参考主题中 SQL Server 丛书 Online.For 有关重新应用 SP3a 的详细信息,请参阅节 3.14 重新应用 SP3a。

3.13 卸载 SP3a

在其中您可以删除 SQL Server SP3a 的方式取决于要删除的 SQL Server 2000 SP3 组件。

注意MDAC 更新不会卸载。有关详细的信息,请参阅节 5.5.1 更新到 Microsoft 数据访问组件。

卸载 SQL Server 2000 数据库组件和桌面引擎 SP3a

若要还原到的 SQL Server 2000 组件前 SP3a 版本,您必须具有回 主的 msdb模型 数据库执行安装 SP3a 的机制。有关详细的信息请参阅节 3.1 后退向上您 SQL Server 数据库。

注意如果的任何数据库参与复制,则必须禁用发布。要禁用发布,请执行以下操作:
  1. 在 SQL Server 企业管理器中展开一个 SQL Server 组、 展开服务器、 用鼠标右键单击 复制 文件夹和然后单击 $ 配置发布、 订阅服务器和分发。
  2. 单击 发布数据库 选项卡。
  3. 清除为每个参与复制的数据库复选框。这使数据库可以分离。
若要还原到的 SQL Server 前 SP3a 版本
  1. 断开所有用户数据库。有关详细的信息请参阅 SQL Server 联机丛书中的"如何附加和分离数据库 (企业管理器)"。
  2. 卸载 SQL Server。在 $ 控制面板,中双击 添加/删除程序,,然后选择您要卸载 SQL Server 的实例。
  3. SQL Server 2000 安装从 CD-ROM 或从中您最初安装 SQL Server 位置。
  4. 应用的任何服务包和 QFE 修复程序之前已安装 SP3a。
  5. 从上一次自动应用 SP3a.This 附加假设数据文件的位置不变,在创建备份的时间已连接的任何用户数据库之前创建的备份还原数据库 主的 msdb模型
  6. 附加的 master 数据库自上次备份后创建的任何用户数据库。
  7. 如有必要,请配置复制。
警告当您还原为前 SP3a 版本的 SQL Server 时后应用 SP3a, 进行数据库主 msdb 和模型的所有更改都都将丢失

卸载 SQL Server 2000 Analysis Services SP3a

要返回到前 SP3a 的状态 Analysis Services,您必须备份 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP 服务器 注册表项,才能安装 SP3a。有关更多的信息,请参阅节 3.2 后退向上您 Analysis Services 数据库和知识库。

注意如果您未做备份此注册表项,则必须按照 330244 的 Microsoft 知识库文章中介绍的过程。

若要还原到的 SQL Server 前 SP3a 版本
  1. 卸载 SQL Server 2000 Analysis Services。在 $ 控制面板,中双击 添加/删除程序,单击 SQL Server 2000 Analysis Services,然后单击 删除。
  2. 重新安装 SQL Server 2000 Analysis Services 从 CD-ROM 或从中您最初安装 Analysis Services 位置。
  3. 应用的任何服务包和安装 SP3a 之前,已安装的 QFE 修补程序。
  4. 删除 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP 服务器 注册表项。
  5. 重新安装 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP 服务器 注册表项,从预 SP3a 备份。

3.14 重新应用 SP3a

以下信息适用于所有组件。

在下列情况下,您必须重新应用 SP3a:
  • 如果应用 SP3a 后添加了新 SQL Server 2000 组件。
  • 如果数据库是复制拓扑的一部分,SP3a 的初始应用程序的过程中是只读的文件组进行的或可写
要重新应用 SP3a,请按照节 3.0 Service Pack 中的步骤安装。

4.0 其他安装注意事项

此部分文档附加的服务包安装注意事项仅在特殊情况下应用的。

4.1 无人参与安装

到 SQL Server 的一个实例,可在无人参与模式下应用数据库组件 SP3a。数据库组件 SP3a 光盘包含可用来执行无人参与的 SP3a 设置和其他类型的安装的.iss 文件。下列文件位于 CD-ROM 上根区目录中:
  • Sql2kdef.iss 是用于将数据库组件 SP3a 应用于默认实例运行在 Windows 2000 或 Windows NT 4.0 上 SQL Server 2000 的无人参与的安装文件。要使用相应的批处理文件是 Sql2kdef.bat。
  • Sql2knm.iss 是用于将数据库组件 SP3a 应用到命名实例运行在 Windows 2000 或 Windows NT 4.0 上 SQL Server 2000 的安装程序文件。您必须更改此.iss 文件来标识正在升级的实例在实例名称。
  • Sql2ktls.iss 是安装程序文件用于应用数据库组件 SP3a 到仅显示工具的安装。此文件可用于安装不做任何修改。
  • Sql2k9x.iss 是安装程序文件用于应用数据库组件 SP3a 运行 Windows Millennium 版或 Windows 98 的计算机上。 您必须更改此.iss 文件来标识正在升级实例在实例名称。
  • Sql2kcli.iss 是用于运行 Windows 95 的计算机上的客户端组件安装到应用数据库组件 SP3a 的安装程序文件。
  • Msolap.iss 是安装程序文件,用于存储有关运行无人参与的安装 Analysis Services SP3a 的参数列表。
有关执行的 SQL Server 2000 无人参与的安装的详细信息请参阅主题"执行一无人参与安装"SQL Server 联机丛书中。

无人参与的安装注意事项

以下注意事项与无人参与安装:
  • 运行无人参与的安装,使用 Windows 身份验证,只要有可能。
  • 如果您必须运行无人参与的安装,使用 SQL Server 身份验证 ; 例如,如果您正在运行 Windows 98 或 Windows Millennium 版的计算机上运行无人参与的安装 SP3a 的不应在.iss 文件中包含一个为 sa 登录密码或批处理文件,因为这些文件不是加密的。而是,您应提供在命令行中,如下所示使用 sapwd 参数 sa 登录密码:

    启动 /wait setupsql.exe-s-短信-f1 C:\sql2knm.iss-sapwd 密码
  • 如果 SQL Server 实例升级到 SP3a 中有为 sa 登录帐户的密码为空,必须提供密码才能运行无人参与的安装。通过运行 sp_password 应更改此密码。
  • 当运行无人参与的安装 SP3a 的您必须手动设置相对应的以下安装开关,到 向后兼容性检查表 对话框或无人参与的安装将失败。
收起该表格展开该表格
无人参与的安装开关说明
UpgradeMSSearch此开关是需要解决需要的重建的全文目录。如果启用全文搜索,则必须将此开关设置为 1。有关详细的信息请参阅节 5.1.5 全文目录是重建后安装完毕。
MSXTSXUpgraded此开关来解决问题需要有关升级的主服务器/目标服务器配置。如果要将 SP3a 应用于母版或目标服务器中,您必须将此开关设置为 1。有关详细的信息,请参阅主/目标服务器的配置更改的 5.4.2 节。
EnableCrossDBChaining(可选)此开关用于启用跨数据库所有权链接。若要能够跨数据库所有权链接将此开关设置为 1。有关详细的信息,请参阅节 5.1.11 跨数据库所有权链接。
  • 如果安装程序检测到任何不可写的数据库或文件组,将信息写入安装日志无人参与的安装和 $ 无人参与的安装过程中将继续。任何不可写入安装日志中列出的数据库时的复制拓扑成员必须使这些数据库可写入并重新 SP3a 设置应用于 SQL Server 2000 的实例。有关使数据库成为可写的详细信息请参阅只读数据库或文件组的节 3.12 应用 SP3a。有关重新应用 SP3a 的详细信息请参阅节 3.14 重新应用 SP3a。

4.2 重新分发 SP3a 数据访问组件

数据库组件 SP3a 包括在自解压文件 Sqlredis.exe。Sqlredis.exe 在运行时它:
  • 执行文件 Mdac_typ.exe 从 Microsoft 数据访问组件 (MDAC) 2.7 Service Pack 1a。这将安装 MDAC 2.7 SP1a 核心组件 (如果未检测到相同或较新版本) 和该 SQL Server 和桌面引擎客户端连接组件所包含的 SP3a 的版本。请参阅 5.5.1 更新到 Microsoft 数据的详细信息访问组件。
  • 安装 Microsoft Jet ODBC 驱动程序和 $ 连接组件。
您可以重新发布在条款和条件 Redist.txt 文件附带 SP3a 中记下该 Sqlredis.exe 文件。

5.0 文档注释

本部分介绍了除了运行 SP3a 时提供的新功能可以发生的问题。运行从 SQL Server 2000、 SQL Server 2000 SP1 或 SQL Server 2000 SP2 升级该 service pack 时,将应用这些问题。此部分不打算进行的所有修复程序 SP3a 中提供的说明。这些修复一个完整列表,请参阅 Microsoft 知识库文章 306908。

此部分 Analysis Services 和元数据服务的网段并不适用于仅限桌面引擎的安装。
与所要包含在本自述文件中的时间内没有 SQL Server 2000 Service Pack 3a 相关的所有信息将在 Microsoft 知识库文章 816502 中都发布。

在 Microsoft 产品支持服务知识库提供了下列 Microsoft 知识库文章。

5.1 数据库和桌面引擎增强功能

下列增强功能应用于其安装数据库组件 SP3a 的 SQL Server 2000 实例。它们还适用于 MSDE 2000 实例在其安装桌面引擎 SP3a。
5.1.1 与数据库组件 SP3a 使用中文、 日语或朝鲜语字符
在 SP1 中引入

如果您在运行 Windows NT 4.0 或 Windows 98 和更高版本升级到 Windows 2000 的服务器上安装数据库组件 SP3a,Windows 2000 升级会替换某些系统文件。这些系统文件所需的排序中文、 日语或朝鲜语字符。如果您使用 SQL Server 数据库中的中文、 日文,或朝鲜语字符,重新运行 Sqlredis.exe 附带 SP3a,升级到 Windows 2000 后的版本。 有关运行 Sqlredis.exe 的详细信息请参阅节 4.2 重新发布 SP3a 数据访问组件。

注意您没有重新应用 Sqlredis.exe,客户端计算机上或在没有包含中文、 日语或朝鲜语字符的数据库的服务器上。
5.1.2 删除哈希团队
在 SP1 中引入

哈希团队已被删除。由于 SQL Server 2000 的某些增强功能的哈希团队不再生成它们 SQL Server 7.0 中提供的性能收益。此外,删除哈希团队将使 SQL Server 2000 更稳定。

因此,查询优化器不再生成查询计划使用哈希团队。

在少数的情况的哈希团队删除可能会导致处理速度更慢的查询。分析此类查询,以查看是否创建更合适的索引将返回查询性能到其以前的级别。
5.1.3 添加亲和力掩码交换机
在 SP1 中引入

两个亲和力掩码开关已添加到此服务包。

亲和力掩码 I/O 交换机

使用此服务包中,您可以指定用于运行的磁盘 I/O 操作线程的 cpu。此开关必须与 亲和力掩码 选项一起使用。有关详细的信息,请参阅文章 298402 Microsoft 产品支持服务知识库中。有关在搜索知识库,请参阅节 1.5 附加信息关于 SP3a。

亲和力掩码连接交换机
使用此服务包中,您可以配置而启用的虚拟接口构架 (VIA) 绑定该 SQL Server 的系统从某些网络卡到一个处理器或一组处理器的连接。 此开关必须与亲和力掩码选项一起使用。有关详细的信息,请参阅文章 299641 Microsoft 产品支持服务知识库中。
5.1.4 筛选索引的视图
在 SP2 中引入

如果您遇到 SQL Server 2000 bug 355069 记录在 Microsoft 知识库文章 306467,此服务包仅将由于数据修改的防止将来出现的意外的结果。除了应用此修复程序,基于视图的筛选器条件的所有索引都必须重新创建。有关详细的信息,请参阅 Microsoft 产品支持服务知识库。
5.1.5 安装完成后,重建全文目录
在 SP3 中引入

安装 SP3a,除了时升级 SP3 中的一部分重建所有全文目录。重建是自动,并且需要占用大量资源。重新生成过程完成之前,对全文目录的查询可能返回部分结果或没有任何结果。安装 SP3a 后,系统事件日志将包含说明目录是已损坏的较旧版本,必须重新生成的消息。

有关的信息,请参阅知识库文章 327217,还讨论了可能的解决方法,使可用在重建过程中,并避免了自动重建的全文本搜索它。
5.1.6 对于 sp_change_users_login 语法更改
在 SP3 中引入

当您运行 sp_change_users_login@ 操作与 = Auto_Fix 参数,现在,您必须指定一个密码。sp_change_users_login 将分配给任何新的登录名,它为用户创建的密码。下面的示例显示了新的 @ 密码 参数
sp_change_users_login [ @Action = ] 'action' 
    [ , [ @UserNamePattern = ] 'user' ] 
    [ , [ @LoginName = ] 'login' ]
    [ , [ @Password = ] 'password' ]
Use the @Password argument only with @Action=Auto_Fix. The following example shows the new syntax for the sp_change_users_login command when using Auto_Fix. Other examples in SQL Server Books Online remain unchanged.

USE pubs
go
EXEC sp_change_users_login 'Auto_Fix', 'Mary', NULL, 'B3r12-36'
go
5.1.7 默认情况下禁用专用访问 OLE DB 提供程序
在 SP3 中引入

如果 DisallowAdhocAccess 注册表选项不显式,默认情况下,设置,则不允许对 OLE DB 提供程序的特殊访问权限。这意味着如 OPENDATASOURCE 和 OPENROWSET 的特殊查询语法在对远程服务器将不起作用。若要以便专用访问,您必须显式地将 DisallowAdhocAccess 选项设置为 0
5.1.8 新 SqlServerLike 提供程序选项
在 SP3 中引入

若要能够更有效地处理远程查询包含 LIKE 谓词的 SqlServerLike 选项已添加 SP3 中。SQL Server 2000 SP3 或更高版本现在有两个用于发送 LIKE 到链接服务器的操作的选项。如果链接服务器的 OLE DB 提供程序支持 SQL Server 语法的将 LIKE 运算符和通配符,您可以指定 SqlServerLIKE 选择让 SQL Server 发送 LIKE 使用 SQL Server 语法的操作。如果链接服务器的 OLE DB 提供程序报告它支持项级别 ANSI/ISO sql-92 语法,或返回 SQLPROP_ANSILIKE 属性,SQL Server 将发送 LIKE 使用 sql-92 语法与链接服务器的操作。有关详细信息 SQLPROP_ANSILIKE, 请参阅主题的"编程,SQLPROPSET_OPTHINTS 属性集"SQL Server 2000 丛书联机。

您必须添加注册表项值以启用 SqlServerLIKE 选项的 OLE DB 提供程序。
警告错误地编辑注册表可能导致严重的问题,可能会要求您重新安装操作系统。Microsoft 不能保证能够解析问题导致的注册表编辑不当。在编辑注册表之前备份任何有价值的数据。
  1. 打开 Regedit32。
  2. 找到正确的注册表项:
    • 对于命名的实例查找此注册表项:
      HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\ < 实例名称 > \Providers\ < 提供程序名称 >
    • 对于默认实例找到此注册表项:
      HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Providers\ < 提供程序名称 >

  3. <提供程序名称 > 项中添加一个名为 SqlServerLIKE 的 DWORD 值,并将其值设置为 1。
5.1.9 对于分布式查询的扩展错误信息
在 SP3 中引入

对于分布式的查询 SQL Server 返回提供程序错误除了信息的服务器错误的信息。当之间的链接的服务器会导致错误的查询时,SQL Server 检查提供程序是否支持 IErrorRecords OLE DB 接口。如果支持此接口,则 SQL Server 调用 GetErrorInfo 函数从提供程序获取更多的错误的信息,并向用户返回该信息,作为错误消息的一部分。如果 IErrorRecords 接口不支持,没有 SQL Server 行为更改: SQL Server 返回一般错误。
例如对于对使用 MSDASQL,不支持 sql_variant 的服务器中运行以下查询:
SELECT * FROM remote2k.dqtable.dbo.sqlvariantnotnull 
--Remote2k is a loopback server.
Prior to SP3, SQL Server returned the following error message:

Server: Msg 7356, Level 16, State 1, Line 1
OLE DB provider 'msdasql' supplied inconsistent metadata for a column. 
Metadata information was changed at execution time.
After you apply SP3 or later, SQL Server returns the following error message:

Server: Msg 7356, Level 16, State 1, Line 1
OLE DB provider 'msdasql' supplied inconsistent metadata for a column. 
Metadata information was changed at execution time.
OLE DB error trace [Non-interface error:  Column 'sql_variant' (compile-time
ordinal 3) of object '"dqtable"."dbo"."sqlvariantnotnull"' was reported 
to have a DBCOLUMNFLAGS_ISFIXEDLENGTH of 16 at compile time and 0 at run time].
5.1.10 新函数 fn_get_sql 返回 SQL 语句
在 SP3 中引入

SP3 和更高版本包括新的函数 fn_get_sql 返回 SQL 语句中是否包含指定的 SQL 句柄的文本。此外,以支持此函数,三个新列添加到 sysprocesses 的系统表下表中列出。
收起该表格展开该表格
列名称数据类型说明
sql_handlebinary(20)代表当前正在执行的批处理或对象
stmt_startint当前的 SQL 语句,用于指定 sql_handle 的起始偏移量
stmt_endint当前的 SQL 的结束偏移量指定 sql_handle 的语句。值为-1 指示当前语句运行的指定 sql_handle fn_get_sql 函数所返回的结果的末尾。
Syntax
fn_get_sql ([ @SqlHandle = ] SqlHandle )

Arguments
[ @SqlHandle = ] SqlHandle

The handle value. SqlHandle is binary(20).

Tables Returned
收起该表格展开该表格
列名称数据类型说明
dbidsmallint数据库 id。此值为 NULL 的特殊 SQL 语句
objectidInt数据库对象的 ID。此值为 NULL 的特殊 SQL 语句
数字smallint如果该过程分为组的数目。此值为 0 表示非过程项和 $ 为专用的 SQL 语句的 NULL 值。
加密指示对象是否已加密。如果该对象将被加密,则值将为如果对象未加密的 0 和 1。
文本文本在 SQL 语句的文本。此值为 NULL 的加密对象。
说明

您可以获得有效的 SQL 句柄从 sql_handlesysprocesses 系统表的列。

如果您将不再存在的句柄传递在缓存中,fn_get_sql 返回一个空结果集。如果您传递的句柄是无效,则批处理停止,并返回以下错误消息:

服务器: 消息 569 级别 16,状态 1 过程 fn_get_sql,行 12 的句柄传递给 fn_get_sql 无效。

SQL Server 2000 无法缓存一些 TRANSACT-SQL 语句,如大容量复制语句和与字符串大于 8 KB 的语句。您不能通过使用 fn_get_sql 函数检索句柄那些语句。
文本 列的该结果集筛选可能包含密码的文本。

类似于 DBCC INPUTBUFFER 命令是 fn_get_sql 函数所返回的信息。如果无法使用 DBCC INPUTBUFFER,例如,请使用 fn_get_sql 函数:
  • 当事件具有超过 255 个字符。W
  • 然后您必须返回最高当前存储过程的嵌套层。例如对于有两个存储的过程的名为 sp_1 和 sp_2。如果 sp_1 调用 sp_2,并且运行 sp_2 时 sysprocesses 系统表中获得句柄 fn_get_sql 函数返回的信息 sp_2。此外,fn_get_sql 函数返回当前最高嵌套层上该存储过程的完整的文本
权限

只有 sysadmin 固定的服务器角色的成员可以运行 fn_get_sql 函数。

示例

数据库管理员可以使用 fn_get_sql 函数来帮助诊断问题的进程。管理员标识问题服务器进程 ID (SPID) 后,管理员可以为该 SPID 检索 SQL 句柄、 调用 fn_get_sql 函数用在的句柄,并使用来确定问题的 SPID 的 SQL 文本的开始和结束偏移量。例如:
DECLARE @Handle binary(20)
SELECT @Handle = sql_handle FROM sysprocesses WHERE spid = 52
SELECT * FROM ::fn_get_sql(@Handle)
5.1.11 跨数据库所有权链接
在 SP3 中引入

此服务包提供了启用跨数据库所有权链接打开和关闭的新选项。

当安装数据库组件 SP3a,安装 向后兼容性检查表 对话框将显示一个选项,用于配置跨数据库所有权链接。默认状态下,安装程序将关闭跨数据库所有权链接的所有用户数据库。您可以启用跨数据库所有权链接的所有数据库。有关详细的信息,请参阅向后兼容性检查表对话框。

安装桌面引擎 SP3a 时, 可以使用 ALLOWXDBCHAINING 安装参数,以启用跨数据库所有权链接的所有数据库。详细的信息,请参阅部分中 3.7.3 MSDE 2000 安装参数。

注意建议不要启用跨数据库所有权链接的所有数据库。

安装后, 您可以使用下列方法若要启用跨数据库所有权链接该实例中的所有数据库的打开和关闭:
  • 使用新的 跨数据库 OwnershipChaining 参数 s p_configure 系统的存储过程。
  • 使用允许 跨数据库所有权链接 选项在 安全 选项卡上的 SQL Server 属性 对话框在企业管理器中。
  • 使用 SQLServer.Configuration.ConfigValues 数据库管理对象 (设计) 集合。当 SQLServer 对象引用实例的 SQL Server 2000 SP3 或更高版本中时,该集合包含名为 跨数据库所有权链接一个 ConfigValue 对象。
如果跨数据库所有权链接关闭的该实例,您可以将其配置为每个数据库中。若要启用跨数据库所有权链接打开和关闭的数据库中使用下列方法:
  • 使用 sp_dboption 系统存储过程的新的 数据库链接 选项。
  • 使用 AllowCross 数据库所有权链接 选项 选项 选项卡上的 数据库属性 对话框在企业管理器中。
  • 使用 DBChainingDBOption2 设计对象的属性。
注意如果您以前启用跨数据库所有权链接 SP3 的预发行版本 (早于生成 8.00.[BUILD_NUMBER]),您必须启用它后安装 SP3a。

详细的信息请单击向后兼容性检查列表页上的帮助按钮,当您运行安装程序、 下载 SQL Server 2000 丛书联机的更新的版本或,请参阅知识库文章 810474。
5.1.12 的跟踪标记 1204年的增强功能
在 SP3 中引入

跟踪标记 1204年返回参与死锁和当前命令影响的锁的类型。在 SP3 和更高版本中,打开此跟踪标记时,死锁信息是自动写入错误日志
5.1.13 sp_changedbowner 的权限更改
在 SP3 中引入

只有 sysadmin 固定的服务器角色的成员可以运行 sp_changedbowner 系统存储过程。
5.1.14 调试功能更改
在 SP3 中引入

默认情况下,处于关闭状态功能用于调试的存储的过程,与 Microsoft Visual Studio 6.0 和较旧或与为 SP3 之前的 SQL Server 查询分析器。应用程序调试 (在调试客户端应用程序时 SQL Server TRANSACT-SQL 断点处停止) 也关闭默认情况下。若要能够调试功能运行 sp_sdidebug,传递参数 legacy_on。 若要禁用调试,请将 legacy_off 传递给该过程。

注意不建议运行 sp_sdidebug 生产服务器上的存储的过程。

有关详细的信息,请参阅 Microsoft 知识库文章 328151。可在 Microsoft 产品支持服务知识库这篇文章。
5.1.15 UDP 端口 1434年上的操作
在 SP3a 中引入

从 SQL Server 2000 SP3a 开始 SQL Server 2000 数据库引擎和 MSDE 2000 的实例,没有配置以支持的网络通信将停止使用用户数据报协议 (UDP) 端口 1434年。实例配置为支持网络通信将使用 UDP 1434

升级到 SP3a 实例将停止该实例共享内存网络库之外的服务器网络库的所有被禁用时使用 UDP 1434。该实例将开始使用端口 1434 每当您启用任何服务器网络库。禁用或启用服务器网络库上的信息,请参阅"SQL Server 网络实用工具"中 SQL Server 2000 丛书联机主题。

由计算机的 UDP 端口 1434年的使用将不会停止,直到已升级到 SP3a SQL Server 2000 和 MSDE 2000 的计算机上的所有实例并将其配置为不支持网络通信。

UDP 端口 1434年是打开还是关闭不会依赖的共享内存网络库状态。在共享内存网络库只用于本地的连接和不使用网络。共享的内存网络库始终处于活动状态 ; 它不能启用或禁用。

您还可以指定是否在安装或升级的 MSDE 2000 实例时禁用服务器网络库。使用 MSDE 2000 安装实用程序 DISABLENETWORKPROTOCOLS 参数或 MSDE 2000 合并模块 SqlDisableNetworkProtocols 属性。有关这些选项的详细信息,请参阅 3.7.3 MSDE 2000 安装参数。

您不能禁用所有的服务器网络库安装或升级 SQL Server 2000 的实例时数据库引擎。

5.2 Analysis Services 增强功能

此部分讨论的增强功能 SQL Server 2000 Analysis Services 附带 SP3a。
5.2.1 远程分区
在 SP1 中引入

在具有 SP1 或更高版本安装在其上的本地服务器上创建远程分区时,远程服务器必须使用在本地服务器上具有父多维数据集的完全访问权限的域用户帐户。成员在 OLAP 管理员组在本地服务器上的任何用户帐户都有完全访问权限。
此外,如果本地服务器有 SP1 或更高版本安装在其上,远程服务器必须具有 SP1 或更高版本,以便在本地服务器可以创建或管理远程分区在其上安装。
5.2.2 Updated 的 Analysis Services 可再发行组件的客户端安装
在 SP1 中引入

Analysis Services SP1 和更高版本包括下列客户端可再发行组件安装程序的更新的版本:
  • PTSLite.exe
  • PTSFull.exe
这些文件位于 \Msolap\Install\PTS 路径的服务包的安装目录中。

注意PTSFull.exe 包括 MDAC ; PTSLite.exe 却没有。

若要防止或解决时使用 Analysis Services 和 Microsoft Office XP,您就可能会遇到的客户端安装问题,在您的应用程序中使用这些更新的客户端安装程序。

注意当使用 Office XP Analysis Services 时, 是我们强烈建议升级客户端。
5.2.3 支持启用第三方数据挖掘算法提供程序
在 SP1 中引入

Analysis Services SP1 和更高版本包括对添加的第三方数据挖掘算法提供程序的支持。有关开发一个数据挖掘算法提供程序的详细信息请参阅第三方数据挖掘提供白皮书和 OLE DB 数据挖掘资源工具包,其中包括的一个示例数据挖掘算法提供程序的代码。
为 5.2.4 更新客户端文件在计算机上安装 Analysis Services
在 SP1 中引入

如果您在包含已更新的客户端文件如 SQL Server 2000 SP1 或 Office XP 的计算机上安装 SQL Server 2000 Analysis Services 必须应用 Analysis Services SP1 或更高版本,以确保客户端工作正常,并且您可以浏览多维数据集。
为 5.2.4 更新客户端文件在计算机上安装 Analysis Services
在 SP1 中引入

如果您在包含已更新的客户端文件如 SQL Server 2000 SP1 或 Office XP 的计算机上安装 SQL Server 2000 Analysis Services 必须应用 Analysis Services SP1 或更高版本,以确保客户端工作正常,并且您可以浏览多维数据集。
5.2.5 OLAP 多维数据集的虚拟多维数据集的引用的增加限制
在 SP3 中引入

现在,虚拟多维数据集可以引用最多 255 个多维数据集。 但是,任何虚拟多维数据集的引用超过 64 多维数据集看不到任何版本的 SP3 之前发布的 Microsoft PivotTable ? 服务。
5.2.6 新说明关键字
在 SP3 中引入

本地多维数据集现在支持内部成员属性的度量值和维度的描述。添加到 CREATE CUBE 多维表达式 (MDX) 语句在说明关键字用于支持描述内部成员属性的使用。下面的 BNF 子句描述对 CREATE CUBE 语句所做的更改:
<dimensions def> :: = DIMENSION <dimension name> [<time def>] 
  [DIMENSION_STRUCTURE <sub_type>] [<hidden def>] 
  [DESCRIPTION <description expression>] 
  <options def> <comma> <hierarchy def list> 
<measures def> :: = MEASURE <measure name> <measure function def> 
  [<measure format def>] [<measure type def>] [<hidden def>] 
  [DESCRIPTION <description expression>] [<comma> <measures def>]
5.2.7 新 PivotTable 服务限制客户端属性
在 SP3 中引入

SP3 引入新 PivotTable 服务的连接字符串属性,受限制的客户端。此属性可用于限制 PivotTable 服务使用本地多维数据集功能。任何使用涉及创建或使用本地多维数据集,such as CREATE CUBE、 CREATE GLOBAL CUBE 和 CREATE 会话 CUBE 语句的语句的尝试将引发错误。 此外,如果语句有可能可以溢出语句堆栈由 PivotTable 服务维护任何涉及如一系列嵌套的深入分析语句的深层递归的语句将引发错误。

此属性存储一个字符串值。如果该值设置为以字符"Y"、"y"、"T"或"t"开头的任何字符串值或可被转换为数字值 0 以外的任何字符串值,则 PivotTable 服务是受限制,如上文所述。如果将该值设置为其他任何字符串值,包括一个空字符串 (""),或可以转换为数字值等于 0,PivotTable 服务的任何字符串值是不受限制。此属性的默认值是"0"。

注意此属性不会限制本地数据挖掘模型的使用。
5.2.8 在安全选项属性中更改
在 SP3 中引入

安全选项 属性设置为 DBPROP_MSMD_SAFETY_OPTIONS_ALLOW_SAFE 还可防止在通过使用本地多维数据集的关键字。
5.2.9 将知识库迁移到元数据服务默认情况下已禁用
在 SP3 中引入

在 SP3 或更高版本中,使用迁移知识库向导中的元数据服务知识库格式选项已被禁用,不建议使用这种格式。但是,是否出于业务原因需要这种格式可以启用该选项通过 EnableMigrationToMetaDataServicesFormat 注册表项。

默认状态下,不存在此注册表项 ; 它必须手动创建在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP Server\Server 连接信息 和设置,以启用到元数据服务知识库迁移格式。此注册表项存储一个区分大小写的字符串值。如果该值设置为 1 或 True,启用知识库迁移到元数据服务格式。如果将该值设置为其他任何字符串值,或者不存在注册表项禁用知识库迁移到元数据服务格式。
请注意如果更改此注册表项的值更改将立即生效。
5.2.10 权限必须远程的数据文件夹上修改
在 SP3 中引入

如果 Analysis Services Data 文件夹位于不同于其上运行分析服务器计算机上,您必须运行 SP3a 安装程序之后修改文件夹权限。在远程计算机上运行,分析在计算机上允许完全控制访问权限由 OLAP 管理员组中的所有成员文件夹上设置权限服务器。随时间,如成员添加或删除从该 OLAP 管理员组,修改对远程数据的权限,请务必到的文件夹,以便它反映了 OLAP 管理员组的当前成员资格。这将允许备份和还原到正常工作。

此外,运行 SP3a 设置后,您必须允许该帐户在其下分析服务器正在运行的完全控制访问到远程数据文件夹。

如果您对 Analysis Services 运行在群集配置中的一个实例应用 SP3a,domain-level OLAP 管理员组必须允许到远程数据文件夹的完全控制访问权限。有关创建和使用 domain-level 的 OLAP 管理员组的详细信息请参阅支持文章 308023 可用在 Microsoft 产品支持服务知识库。

5.3 复制增强功能

此部分讨论了 SQL Server 2000 复制到所包含的 SP3a 的增强功能。
5.3.1 事务性复制更新自定义存储过程
在 SP1 中引入

在事务复制安装过程中的插入、 删除,和更新操作的自定义存储的过程创建订阅数据库中。不管列的数量受到 UPDATE 语句,更新自定义存储过程更新所有的订阅表中的列。任何未更改的列将被重置为相同的值更新之前存在的。通常,此操作会使没有问题。 但是,如果任一这些列被编入索引此重置会变得昂贵。

如果使用事务复制和订阅表上有多个索引,并且只有几个列值变化是由于更新,维护索引的系统开销可以限制将更改应用于订阅服务器的性能。例如对于用于报告目的的订阅数据库可能有许多比发布数据库的多个索引。动态地生成 UPDATE 语句在运行时可以提高性能。该更新包括已创建为获得最佳的 UPDATE 字符串的这些列。

此服务包包括一个新存储的过程 sp_scriptdynamicupdproc,生成自定义存储的过程,您可以在订阅服务器上使用动态生成更新语句在运行时。但是,生成动态的 UPDATE 语句,在运行时需要额外的处理。

sp_scriptdynamicupdproc

存储的过程 sp_scriptdynamicupdproc 生成将创建一个动态更新的存储过程在创建程序语句。 自定义存储过程内的 UPDATE 语句根据 MCALL 语法,用于指示要更改的列动态,建立。如果订阅表的索引数的增长和被更改的列数很小,请使用此存储的过程。此存储的过程在发布服务器上发布数据库上运行。
Syntax
sp_scriptdynamicupdproc [ @artid =] artid

Arguments
[@artid =] artid

此文章 id。artid 是整数与没有默认值。

结果集

返回一个结果集单个 nvarchar(4000) 列组成。在结果集形成完整的创建步骤用于创建自定义存储的过程的语句。

说明

在事务复制中使用 sp_scriptdynamicupdproc。默认 MCALL 脚本编写逻辑包括在 UPDATE 语句内的所有列,并使用位图来确定已更改的列。如果未更改的列,列设置返回到其自身,这通常会导致任何问题。如果编制列,了自动索引会进行额外处理。此存储的过程使用动态方法的通过与之相反: 它包括它提供了一个最佳 UPDATE 字符串只有更改过的列。但是,额外处理时累算在运行时生成动态 UPDATE 语句时。建议您测试存储的过程的动态方法和静态默认值的方法,然后选择合适的最佳解决方案,以满足您的特殊需求。

权限

在 public 角色的成员可以执行 sp_scriptdynamicupdproc

示例

本示例将 pubs 数据库中的作者表上 (使用 artid 设置为 1) 创建一篇文章,并指定 UPDATE 语句是自定义存储的过程执行:

MCALL sp_mupd_authors

Generate the custom stored procedures to be executed by the Distribution Agent at the Subscriber by running the following stored procedure at the Publisher:
EXEC sp_scriptdynamicupdproc @artid = '1'
The statement returns:

create procedure [sp_mupd_authors] 
  @c1 varchar(11),@c2 varchar(40),@c3 varchar(20),@c4 char(12),
  @c5 varchar(40),@c6 varchar(20),@c7 char(2),@c8 char(5),
  @c9 bit,@pkc1 varchar(11),@bitmap binary(2)
as

declare @stmt nvarchar(4000), @spacer nvarchar(1)
select @spacer =N''
select @stmt = N'update [authors] set '

if substring(@bitmap,1,1) & 2 = 2
begin
  select @stmt = @stmt + @spacer + N'[au_lname]' + N'=@2'
  select @spacer = N','
end
if substring(@bitmap,1,1) & 4 = 4
begin
  select @stmt = @stmt + @spacer + N'[au_fname]' + N'=@3'
  select @spacer = N','
end
if substring(@bitmap,1,1) & 8 = 8
begin
  select @stmt = @stmt + @spacer + N'[phone]' + N'=@4'
  select @spacer = N','
end
if substring(@bitmap,1,1) & 16 = 16
begin
  select @stmt = @stmt + @spacer + N'[address]' + N'=@5'
  select @spacer = N','
end
if substring(@bitmap,1,1) & 32 = 32
begin
  select @stmt = @stmt + @spacer + N'[city]' + N'=@6'
  select @spacer = N','
end
if substring(@bitmap,1,1) & 64 = 64
begin
  select @stmt = @stmt + @spacer + N'[state]' + N'=@7'
  select @spacer = N','
end
if substring(@bitmap,1,1) & 128 = 128
begin
  select @stmt = @stmt + @spacer + N'[zip]' + N'=@8'
  select @spacer = N','
end
if substring(@bitmap,2,1) & 1 = 1
begin
  select @stmt = @stmt + @spacer + N'[contract]' + N'=@9'
  select @spacer = N','
end
select @stmt = @stmt + N' where [au_id] = @1'
exec sp_executesql @stmt, N' @1 varchar(11),@2 varchar(40),@3 varchar(20),
  @4 char(12),@5 varchar(40),@6 varchar(20),@7 char(2),@8 char(5),@9 bit',
  @pkc1,@c2,@c3,@c4,@c5,@c6,@c7,@c8,@c9

if @@rowcount = 0
   if @@microsoftversion>0x07320000
      exec sp_MSreplraiserror 20598

运行此存储过程后,您可以手动创建到订阅服务器上的存储的过程使用生成的脚本。


5.3.2 事务性复制 UPDATE 语句,唯一的列上
在 SP1 中引入

在事务的复制 UPDATE 语句通常是作为复制更新。如果更新更改是唯一索引、 非聚集的索引或作为唯一约束使用的表达式的一部分的任何列,作为跟 INSERT DELETE 语句执行更新,但在订阅服务器上的语句。这是因为这种类型的更新可能会影响多行,并且如果了传递逐行更新,则会发生唯一性冲突。

如果该更新影响只能有一行,则没有机会对唯一性冲突。因此,跟踪标志 8207 已添加到此服务包,以允许任何唯一的列会影响复制为 UPDATE 语句只能有一个行的更新。此优化已专门为安装在订阅服务器上的用户定义更新触发器,并会影响唯一列上的只能有一个行的更新要求这些触发器激发的应用程序添加。
若要用于跟踪标志 8207 将其打开命令提示符下 (sqlservr.exe-T8207) 或在运行时启动日志读取器代理程序之前使用 DBCC TRACEON(8207,-1)。

重要通常,跟踪标志 8207 与只读事务复制一起使用。如果主键更新可能会在订阅服务器上发生,请不要使用可更新订阅使用此跟踪标记。
5.3.3 限制并发快照处理从删除
在 SP1 中引入

在 SQL Server 2000 并发快照处理已不推荐如果发布的表有一个唯一的索引,这是不为主键或聚集键。如果对群集注册表项进行数据修改生成并发快照时,复制可能会失败,重复的键错误时应用到订阅服务器的并发快照。使用此服务包使用并发快照处理限制将被删除。
5.3.4 事务性复制脚本自定义存储的过程
在 SP1 中引入

设置非同步订阅时 (也就是不会收到初始快照的订阅)、 自定义存储过程的 INSERT,UPDATE,和 DELETE 语句都必须手动创建。 通常,这些语句是在订阅服务器上创建初始快照传递时。一个新存储的过程 sp_scriptpublicationcustomprocs,已添加到自定义存储过程在发布级别为生成脚本。这一新功能可能会使它更易于设置 nosync 订阅。

sp_scriptpublicationcustomprocs

在一个出版物中自动生成自定义过程架构选项启用该存储过程
sp_scriptpublicationcustomprocs 脚本所有表项目自定义的 INSERT、 UPDATE 和删除的过程。
sp_scriptpublicationcustomprocs 做很有用的设置的手动应用快照的订阅。
Syntax
sp_scriptpublicationcustomprocs [@publication]= publication_name

Arguments
[@publication] = publication_name

The name of the publication. publication_name is a sysname with no default.

Return Code Values
0 (success) or 1 (failure
结果集

返回一个结果集单个 nvarchar(4000) 列组成。在结果集形成完整的 CREATE 程序语句创建自定义存储的过程所必需的。

说明

自定义过程不编写脚本的文章,而不将自动生成 (0x2) 的自定义过程架构选项。

权限

执行权限授予 公共 ; 过程的安全检查执行来限制对 sysadmin 固定服务器角色和 db_owner 固定的数据库角色的当前数据库中的成员访问该存储过程内。

示例

此示例生成自定义存储过程的脚本在出版物中名为 Northwind
exec Northwind.dbo.sp_scriptpublicationcustomprocs 
@publication = N'Northwind'

5.3.5 合并的复制基于保留的元数据清除标志
在 SP1 中引入

合并复制系统表中包含大量的元数据时清除元数据可提高性能。要 SQL Server 2000 SP1,之前可能被元数据清理只能由运行 sp_mergecleanupmetadata。但是,SQL Server 2000 SP1 和更高版本包括基于保持期的元数据清除向上这意味着可以从以下系统表自动删除元数据:
  • MSmerge_contents
  • MSmerge_tombstone
  • MSmerge_genhistory
  • 前像表如果存在任何
注意图像的表之前显示如果 @ keep_partition_changes 出版物上启用同步优化选项。

基于保持期的元数据清除发生,如下所示:
  • 如果 –MetadataRetentionCleanup 合并代理程序参数设置为 1,因为它是默认情况下,合并代理程序清除订阅服务器上和在合并中所涉及的发布服务器。
  • 如果参数设置为 0 的自动清理不会发生-MetadataRetentionCleanup。在这种情况下手动启动基于保持期的元数据清除通过执行 s p_mergemetadataretentioncleanup。此存储的过程必须在每个发布服务器和订阅服务器应清理的执行。它是建议使用,但不是要求,发布服务器和订阅服务器上进行清理在类似的点的时间 (请参阅本部分中稍后介绍的防止 False 冲突)。

    注意-MetadataRetentionCleanup 参数设置为 1 SQL Server 2000 SP1 和更高版本中包含的所有合并代理程序配置文件。如果升级到 SP1 或更高版本的服务器,并将合并复制合并代理程序配置文件将自动更新以包括此参数。如果您升级已合并复制启用到 SP1 或更高版本的服务器,合并代理程序配置文件不会自动更新 ; 更新配置文件,通过运行 sp_add_agent_parameter (请参阅本部分中稍后介绍的 sp_add_agent_parameter 的附加参数)。

    重要为出版物则默认保留周期为 14 天。如果一篇文章属于多个出版物中,可能有不同的保留期。在那种情况下最长的保留期用于确定最早可能的时间清理可以发生。如果有一个数据库上的多个发布,如果这些发布的任何一个使用了无限的发布保持期 (@ 保留 = 0) 的数据库将不会自动清除合并元数据。由于这个原因请谨慎使用无限的发布保持期
对于 sp_add_agent_parameter 的附加参数

系统存储过程 sp_add_agent_parameter 现在具有使您可以添加或删除清理的元数据保留,合并代理程序配置文件中的 MetadataRetentionCleanup 参数。值为 1 表示配置文件应包含清理 ; 值为 0 表示不应包含清理。例如对于将干净到配置文件的元数据保留执行下面的代码:
EXEC sp_add_agent_parameter @profile_id=<my_profile_id>,
  @parameter_name='MetadataRetentionCleanup', @parameter_value=1
与 SQL Server 的不同版本的拓扑中的元数据清除

自动基于保持期清理发生在合并复制中所涉及的数据库中数据库和合并代理程序必须都是在运行 SQL Server 2000 SP1 的服务器上或更高版本。例如:
  • SQL Server 7.0 拉订阅服务器不会运行清理 SQL Server 2000 SP1 发布服务器上。
  • SQL Server 2000 SP1 强制合并代理程序不会运行清理前 SP1 SQL Server 2000 订阅服务器数据库中。
  • 合并代理程序运行清理一个 SQL Server 2000 SP1 的发布服务器数据库中即使有运行的 SQL Server 2000 的订阅者 SQL Server 2000 SP1 推送或更早版本。
自动清理某些服务器上,不能在其他人将最多原因 false 的冲突和那些应很少发生。用于包含 prior to SQL Server 2000 SP1 SQL Server 的版本的拓扑结构,您可能会通过不清理自动的所有服务器上运行 sp_mergemetadatacleanup 看到性能收益。

防止 False 冲突

基于保持期的元数据清理会阻止无法收敛并静默覆盖的其他节点上的更改。但是,如果满足以下条件时,可能会发生错误的冲突:
  • 在一个节点清除元数据并不能是另一个。
  • 在清理向上节点的后续更新发生在其元数据已被删除的行上。
例如对于如果在发布服务器上,但不能在订阅服务器上,会清理元数据,并在发布服务器上进行更新,则即使同步数据的显示将发生冲突。

若要阻止此冲突,请确保该元数据会清理在同一时间有关的相关节点。如果-MetadataRetentionCleanup 被设置为 1,在发布服务器和订阅服务器上清理自动合并启动之前从而确保节点正在清理一次。如果将发生冲突,使用合并复制冲突查看器查看冲突并根据需要更改结果。

如果一篇文章属于多个出版物,或者在重新发布的情况下,则可能保留期,对于一个给定的行,发布服务器和订阅服务器上都不同。若要减少的元数据的一侧,但不是清除机会,建议这些不同的发布具有类似的保留期。

注意如果系统表中包含大量的元数据必须要清理的合并进程可能需要较长的时间运行。清除元数据以常规方式若要避免此问题。
5.3.6 备份和还原合并复制有关的问题
在 SP1 中引入

发布数据库从备份中还原的第一次应与有 (也就是订阅有一个分配的优先级值) 的全局订阅的订阅数据库同步以保证正确的聚合行为。同步可以确保在发布数据库丢失了由于还原操作的更改会准确地重新应用。

不同步发布数据库与匿名订阅的订阅数据库。因为匿名订阅没有元数据不足,无法将更改应用于发布数据库,这样同步可能会导致在无法收敛的数据。

正在计划备份,并还原为合并复制的操作时请考虑以下附加问题:
  • 不超过保留期的备份中还原的订阅数据库。

    只有在备份是不早于订阅服务器上的所有发布的订阅在最短保持期,请从备份中还原一个订阅数据库。例如对于如果订阅服务器订阅与保留期,10 和 20,30 天的三个发布分别,用于还原数据库备份不应超过 10 天。
  • 生成一个备份之前进行同步。

    强烈建议与在发布服务器同步订阅服务器之前执行备份。否则,系统可能未收敛正确如果订阅服务器从这个备份还原。尽管该备份文件本身可能是新,与某一发布服务器上一次同步可能几乎一样在保持期旧。例如对于考虑具有 10 天的保留期的出版物。上一次同步 8 天,现在执行备份。如果备份应用 4 天之后,最后一次同步将发生 12 天这是过去的保持期。如果订阅服务器上有同步在备份之前的右侧,在保持期内是订阅数据库。
  • 如果您更改出版物保留值,请重新初始化订阅服务器。

    如果希望更改出版物保持值手动重新初始化订阅服务器以避免在无法收敛的数据。当发布保持期结束时,基于保持期的元数据清理功能合并系统表中删除过时的元数据。

    出版物保持值用于确定应过期后还没有在保持期内同步的订阅。如果一个清理后, 增加发布保持期和订阅试图与已删除元数据) 的发布服务器合并,不会由于增加了的保留值的过期订阅。此外,发布服务器上没有足够多的元数据以更改下载到订阅服务器会导致无法收敛。
  • 使用相同的出版物保留值的所有发布服务器和其备用同步伙伴。使用不同的值可能会导致无法收敛。
5.3.7 从不同版本的 SQL Server 还原复制数据库
在 SP1 中引入

将备份还原到相同的服务器和数据库--为从其中创建备份服务器运行相同版本 — 保留复制设置。如果要还原复制的数据库版本的不同的用于备份数据库版本 SQL Server,请考虑以下问题:
  • 如果要在从使用 SQL Server 2000 创建的备份还原数据库到 SQL Server 2000 SP3a,并且您想要保留复制设置必须运行 sp_vupgrade_replication。运行 sp_vupgrade_replication 可以确保升级复制元数据。如果不运行 sp_vupgrade_replication,复制元数据可以是处于不可预测的状态。
  • 如果要在从使用 SQL Server 7.0 (发行版本,SP1、 SP2、 SP3 和 SP4) 创建的备份还原数据库到 SQL Server 2000,并且您想要保留复制设置,则必须重新安装 service pack 之前创建备份。可以将数据库还原到 SQL Server 2000 SP3a,直接从复制的数据库在 SQL Server 7.0 中创建的备份,但不是会保留复制设置。
5.3.8 新-MaxCmdsInTran 参数日志读取器代理程序
在 SP1 中引入

开始使用 SP1,一个新的命令提示符参数-MaxCmdsInTran,已添加的日志读取器代理程序。影响大量的命令 (通常是大容量更新或删除) 的事务的分发代理程序必须等到日志读取器代理程序将写入分发数据库的整个事务,它才能开始传播到订阅服务器事务。此延迟阻止分发代理程序,并减少了两个代理之间并行度。

通过使用 –MaxCmdsInTran, 日志读取器代理程序将大的交易记录分成较小的块,每个块包含相同或更少的命令为该 -MaxCmdsInTran 输入。因此,分发代理程序可以启动日志读取器代理程序通过更高版本的数据块,在同一个事务仍正常工作的同时处理的事务更早版本块。

日志读取器代理程序和分发代理程序之间的并行度的这一改进有助于更好地整体复制吞吐量。注意: 事务块是提交在订阅服务器上作为单独的事务的中断的原子性 ACID (原子性、 一致性、 隔离和持久性) 属性的一个属性。 此结果不是大多数的情况中的问题,但建议您在此选项以确保测试。

定义 –MaxCmdsInTran 参数

指定一个正的整数 (1 或以上)-MaxCmdsInTran 参数值。指定为 0 的值等效于不使用参数。因为此参数可以提高性能,仅当交易记录是很大时,值为 5000 或更高版本为此参数是典型的。例如:

logread.exe-MaxCmdsInTran 10000。

若要将此参数发布服务器必须运行 SQL Server 2000 SP1 或较高版本,必须将日志读取器代理程序和分发数据库升级到 SP3 或更高版本。否则为 -MaxCmdsInTran 将被忽略。
5.3.9 非唯一聚集索引的限制
(适用于仅在事务复制) 的 SP2 中的 Introduced

对于事务复制发布后,您不能在表上创建非唯一的聚集的索引。创建索引之前必须首先删除包含表的任何出版物。
新-5.3.10 MaxNetworkOptimization 命令行参数的快照代理程序
在 SP2 中引入

合并复制可正常的处理过程中发送 DELETE 到订阅服务器不属于订阅服务器上的行的命令的分区。这种类型的 DELETE 命令称为不相关的删除。 不相关的删除不会影响数据完整性或收敛,但它们可能会导致不必要的网络通信量。

若要减少由不相关的删除引起网络通信量,您可以使用新的快照代理程序参数-MaxNetworkOptimization 与合并复制发布。 该参数设置为 1 可以减少不相关的删除的可能性最大限度地提高其了网络优化。

注意此参数设置为 1 非常有用,仅当设置同步优化选项的合并发布时为 true (@ keep_partition_changessp_addmergepublication 的参数)。

默认值为 0,因为该参数设置为 1 可以提高存储的元数据并导致性能降低在发布服务器上,如果存在多个级别的联接筛选器和复杂的子集筛选器。您应该仔细评估复制拓扑并设置 -MaxNetworkOptimization 为 1,只有从删除不相关的网络通信量是高得难以接受。

您可以将此参数添加到快照代理程序配置文件,通过执行系统过程 sp_add_agent_parameter,如下所示:

EXEC sp_add_agent_parameter 1,MaxNetworkOptimization' 1
5.3.11 合并复制使用新建角色
在 SP3 中引入

SP3 和更高版本会自动创建的合并复制的使用新的角色。新角色的名称是使用窗体 MSmerge-< 发布 ID >. 角色在每个合并复制发布的发布服务器上创建的并充当发布访问列表 (PAL) 控制对合并发布服务器上的发布的访问。如果此角色将被删除,您可以运行新的存储的过程包含 SP3 或更高版本,sp_createmergepalrole, 重新创建该角色。在发布服务器发布数据库上重新创建该角色执行此存储的过程
Syntax
sp_createmergepalrole [ @publication = ] 'publication' 

Arguments
[@publication = ] 'publication' 

The publication name. publication is sysname, with no default. This parameter is used to select the publication to use when re-creating a role used by merge replication. 

Return Code Values
0 (success) or 1 (failure)
备注

运行 sp_createmergepalrole 到新角色的 sysusers 表添加一个新行。此新角色的名称基于 pubidsysmergepublications 表为给定的发布中的值。角色名称的前缀是 MSMerge_ 和 pubid 值 (不带连字符) 追加到在角色名。

权限

只有 sysadmin 固定服务器角色或 db_owner 固定的数据库角色的成员可以运行 sp_createmergepalrole
5.3.12 新的订阅的要求创建的非系统管理员用户
在 SP3 中引入

如果创建订阅的用户不是 sysadmin 固定服务器角色的成员,您必须执行以下任一操作:
  • 使用登录和密码配置 SQL Server 代理代理帐户,以便与复制代理程序相关联 SQL Server 代理作业步骤运行具有足够的权限。有关详细的信息,请参阅主题 xp_sqlagent_proxy_account SQL Server 联机丛书中。
  • 更改所有者的作业步骤之前运行的代理是 sysadmin 固定的服务器角色的成员的用户。
注意远程代理程序激活功能总是需要 sysadmin 固定的服务器角色中用户帐户的上下文中运行作业步骤。
5.3.13 更改为存储过程的权限
在 SP3 中引入

权限已更改数量的用于实现、 管理,和监视复制拓扑结构的存储过程上。 这些更改的大多数都涉及运行存储的过程所需权限的情况下。有关新的权限的详细信息,查看 SQL Server 联机丛书的更新版本中复制存储过程在 TRANSACT-SQL 参考文档。有关更新 SQL Server 联机丛书的详细信息请参阅节 1.6 更新丛书联机文档可用。
5.3.14 sp_addmergearticle 和 sp_changemergearticle 新建参数
在 SP3 中引入

新参数、 @ published_in_tran_pub,已被添加到 sp_addmergearticlesp_changemergearticle。 此参数用于指示还在事务发布中公布合并发布中的一个项目。 @ published_in_tran_pub 是默认值为 FALSE nvarchar(5)。TRUE 指定事务性发布中也发布文章。

注意当您更改此参数在 sp_changemergearticle 时,快照必须将失效,必须重新初始化订阅服务器。
5.3.15 新页的配置发布和分发向导
在 SP3 中引入

配置发布和分发向导现在包括了一个新页面: 分发服务器密码。如果您选择要用作远程分发服务器的服务器的一个或多个发布服务器和一个或多个这些发布服务器时需要密码,您必须在此页上键入密码。在发布服务器和远程分发服务器之间的连接是链接的服务器和远程服务器的混合体。连接将使用该登录 distributor_admin。默认情况下, 发布服务器被配置为不受信任在远程分发服务器上以便一个密码是必需的。

注意如果您下载并安装 SQL Server 2000 丛书联机 (更新-SP3),当您单击新页的 帮助 按钮时,此信息才可用。
5.3.16 更改到 Windows 同步管理器支持
在 SP3 中引入

SQL Server 允许您使用与 Windows 同步管理器中启用 (创建使用 SQL Server 企业管理器、 SQL 的设计和复制存储过程) 的现有订阅。您还可以创建新的订阅使用 Windows 同步管理器。同步订阅时应用该的 service pack 后,Windows 同步管理器将提示您输入密码或连接到参与同步的服务器所需的密码。
5.3.17 改为附加或还原复制数据库的要求
在 SP3 中引入

下一组特定的条件,复制可能无法正常工作,附加或还原发布的数据库的过程中。 这些条件是:
  • SP3 或更高版本已应用。
  • 连接数据库的用户不是 sysadmin 固定的服务器角色的成员。
  • 跨数据库链接已不被允许。
如果所有这些条件满足您应在附加或还原的数据库上执行 sp_changedbowner 存储过程。指派所有权给 sa 内置的管理员登录。这将确保复制正常工作。

注意您必须是 sysadmin 固定的服务器角色的成员才能执行 sp_changedbowner

有关跨数据库所有权链接的详细信息请参阅节 5.1.11 跨数据库所有权链接。

5.4 SQL Server 代理增强功能

此部分讨论了到 SQL Server 代理 SP3a 中所包含的增强功能。
5.4.1 SQL Server 代理日志帐户信息
在 SP2 中引入

现在,每个作业步骤运行帐户记录在 Windows SQL Server 代理作业历史。此信息可帮助管理员诊断与包括为复制和数据转换服务 (DTS) 任务定义的计划的作业的计划作业的安全问题。
主/目标服务器的配置更改的 5.4.2
在 SP3 中引入

多服务器管理是跨多个实例的 SQL Server 自动化管理任务的过程。使用多服务器管理如果您管理两个或更多的服务器和您要集中维护任务。

在 SP3a,SQL Server 代理服务帐户不必是 Windows 管理员,除非您需要使用 SQL Server 代理代理帐户。有关在 SQL Server 代理代理服务器的详细信息帐户,请参阅节 5.7.3 SQL Server 代理代理帐户改进。在 SQL Server 代理服务帐户必须是 sysadmin 固定服务器角色的成员。

与多服务器的管理,您必须具有至少一个主服务器和至少一个目标服务器。主服务器分发作业,并从目标服务器中接收事件。主服务器存储在中央副本的目标服务器上运行的作业的作业定义。目标服务器周期性地连接到其主服务器来更新他们的作业执行的列表。如果新的作业目标服务器下载作业,并断开与主服务器的连接。目标服务器完成作业后,它重新连接到主服务器,并报告作业的状态。

在应用 SP3a 之前,必须完成升级 SQL Server 2000 主服务器/目标服务器配置的几个步骤。具有 SP3a 引入的更改不兼容 SQL Server 7.0 的目标服务器使用或不运行 SP3a 的任何服务器。这是从原始 SQL Server 2000 功能的更改。

升级您的主服务器/目标服务器配置
  1. 在主服务器上创建一个新的 MSX (主服务器) 帐户。这是为了准备 TSX (目标服务器) 服务器 (或服务器) 进行升级。若要执行此操作运行下面的命令。
    --Option A: Windows authentication
    EXEC sp_grantlogin 'DOMAIN\user'
    GO
    USE msdb
    GO
    EXEC sp_adduser 'DOMAIN\user', 'DOMAIN\user', 'TargetServersRole'
    GO
    
    --Option B: SQL Server authentication – see explanation below for 
    --details.
    EXEC sp_addlogin <MSXAccount>, <MSXAccountPassword>, 'msdb' 
    GO
    USE msdb
    GO
    EXEC sp_adduser <MSXAccount>, <MSXAccount>, 'TargetServersRole'
    GO
    
    其中 <msxaccount>表示您选择的 SQL 登录名,<msxaccountpassword>值,该值代表相关联的密码。

    注意这些值必须括在单引号中。

    选择 MSX 帐户时,您有以下选项:
    • Windows 身份验证。这是最安全的选项,因为要存储,不具有密码,并且可以被 SQL Server 和 SQL Server 代理配置没有本地 Windows 管理员权限。
    • SQL Server 身份验证。这要求具有本地窗口管理员权限,因为 SQL Server 将用户名和密码存储为一个的本地安全颁发机构 (LSA) 机密并访问仅限于本地的 Windows 管理员 SQL Server 代理服务帐户。您可以创建所有的 TSX 服务器的帐户,也可以创建一个帐户,为每个 TSX 服务器。
    不指定 SQL Server 代理探测帐户 (<computer_name> _msx_probe_login)。作为升级到 SP3 或更高版本的 SQL Server 删除旧的探测帐户,因为 TSX 服务器不能再使用它们。
  2. 您 TSX 服务器升级到 SP3a 一次。(请应用 service pack 之前,参阅第 3 步有关计时升级的详细信息。
  3. 停机时间降至最低,请 TSX 的每个服务器上运行扩展存储的过程 xp_sqlagent_msx_account SP3a 更新完毕后不久。

    注意运行 xp_sqlagent_msx_account 后, 必须停止并重新启动每个服务器上 SQL 代理。

    有关 xp_sqlagent_msx_account 的详细信息,请参阅节 5.4.3 新建 SQL Server 代理扩展存储过程。
  4. 主服务器以应用 SP3a。因为 TSX 服务器不能再使用它们,将通过 SP3a 设置中删除旧的 _msx_probe 帐户。 如果帐户拥有 SQL 代理作业,则不会删除该帐户,您必须将该作业的所有者更改为另一个用户,并手动删除这些帐户。如果想要继续完成使用该自己的 SQL 代理作业的旧的 _msx_probe 帐户必须更改 _msx_probe 帐户的密码。
5.4.3 新 SQL Server 代理扩展存储过程
在 SP3 中引入

SP3a 包括新的扩展存储的过程,使您可以配置 SQL Server 代理 TSX 服务器用来从 MSX 服务器下载指令帐户。此帐户也被称为 MSX 帐户或主服务器帐户。

xp_sqlagent_msx_account

xp_sqlagent_msx_account 扩展存储的过程设置或检索 SQL Server 代理 MSX 帐户的用户名和密码与 LSA 机密,TSX 服务器上。只有 securityadmin 固定的服务器角色的成员可以运行此扩展存储的过程。

您可以执行此扩展存储的过程之前,必须运行 SQL Server 代理。此外,如果指定该帐户是 SQL Server 登录,SQL Server 代理必须具有本地 Windows 管理员权限。 SQL Server 代理将作为一个的 LSA 机密存储用户名和密码并访问仅限于本地的 Windows 管理员。
Syntax
xp_sqlagent_msx_account

    {N'GET' |

    N'SET' | N'DEL', N'MSX_domain_name', N'MSX_username', N'MSX_password'

    }

Arguments
N'GET' 

检索当前 SQL Server 代理 MSX 帐户。N'GET 是没有默认值与一个 nvarchar。出于安全原因不报告密码。

N'SET

设置要用作 SQL Server 代理 MSX 帐户的帐户。若要指定该帐户以使用作为 SQL Server 代理 MSX 帐户的使用 MSX_username 和 MSX_password 参数。N'SET 是没有默认值与一个 nvarchar。

N'DEL

删除 SQL Server 代理 MSX 帐户。

MSX_domain_name

留作将来使用。

MSX_username

要用作 SQL Server 代理 MSX 帐户的 Windows 帐户的名称。指定此参数和要选择 Windows 安全性 MSX_password 为空字符串。在这种情况下,SQL Server 代理服务的帐户凭据用于登录到 MSX 服务器上。没有默认值与一个 nvarchar MSX_username。

MSX_password

指定在 MSX_username SQL Server 帐户的密码。指定此参数,若要选择 Windows 安全性 MSX_username 为空字符串。在这种情况下 SQL Server 代理服务帐户凭据用于登录到 MSX 服务器。没有默认值与一个 nvarchar MSX_password。

注意必须按顺序指定 xp_sqlagent_msx_account 的参数。不能使用命名的参数。
返回代码值

返回的值为 0,成功或失败时 1
xp_sqlagent_msx_account 出现故障,并返回值为 1, SQL Server 生成错误的信息与一条错误消息。
结果集

当您指定 xp_sqlagent_msx_account 如果 SQL Server 代理 MSX 帐户设置返回以下信息的结果集 N'GET
收起该表格展开该表格
数据类型说明
sysname不是适用保留以供将来使用。
用户名sysname用作 SQL Server 代理 MSX 帐户的帐户。
如果还没有被设置为 SQL Server 代理 MSX 帐户或 N'SET 是指定,返回没有结果集。

权限

执行 xp_sqlagent_msx_account 默认 securityadmin 固定的服务器角色的成员的权限。

示例
  • 检索当前指派的 SQL Server 代理 MSX 帐户

    下面的示例检索当前分配 SQL Server 代理 MSX 帐户用作帐户:

    EXEC master.dbo.xp_sqlagent_msx_account N'GET
  • 设置 SQL Server 代理 MSX 帐户,使用 Windows 身份验证

    下面的示例将设置 SQL Server 代理 MSX 帐户以使用 Windows 身份验证:
    EXEC master.dbo.xp_sqlagent_msx_account N'SET',
       N'',  -- Reserved for future use 
       N'',  -- MSX_username
       N''  -- MSX_password
    
  • 设置为 SQL Server 的 SQL Server 代理 MSX 帐户身份验证

    以下示例设置 SQL Server 代理 MSX 帐户 Ralph 和指定的密码:
    EXEC master.dbo.xp_sqlagent_msx_account N'SET',
       N'',  -- Reserved for future use 
       N'Ralph',  -- MSX_username
       N'RalphPwd'  -- MSX_password
    
  • 删除 SQL Server 代理 MSX 帐户

    下面的示例删除 SQL Server 代理 MSX 帐户。这意味着 SQL Server 代理将默认为集成的安全性的 Windows 身份验证。


    EXEC master.dbo.xp_sqlagent_msx_account N'DEL
5.4.4 SQL Server 代理权限检查
在 SP3 中引入

现在可以 SQL Server 检查以确保代理作业拥有者有权追加或改写输出日志文件,从每个作业。这发生在三种方法中:
  • 如果作业拥有者是 sysadmin 固定服务器角色的成员,作业输出日志文件可以被写入到服务器。
  • 如果作业拥有者是 Windows 的用户,SQL Server 测试用户是否已在服务器上所选的作业输出日志文件位置写入的权限。
  • 如果作业拥有者是 SQL Server 用户,SQL Server 测试 SQL Server 代理代理帐户的服务器上所选的作业输出日志文件位置写入的权限。如果还没有被设置代理帐户被写入日志。
在所有的情况中作业写入 SQL Server 代理凭据,但 SQL Server 现在测试以确保用户有权向所选作业写入输出日志文件在服务器上的位置。在作业历史记录中出现错误,但如果无法写入该日志文件作业步骤不会失败。
5.4.5 SQL 代理邮件 MAPI 配置文件
在 SP3 中引入

SQL Server 2000 32 版本中可以将 SQL 代理邮件配置为发送电子邮件通知中使用扩展 MAPI 电子邮件配置文件。您可以使用诸如 Microsoft Outlook 的扩展 MAPI 电子邮件应用创建一个扩展 MAPI 配置文件。SQL Server 2000 64-位版本中的 SQL 代理邮件只能使用一个简单 MAPI 配置文件用于发送电子邮件通知。不要在 32 位版本的 SQL Server 2000 中使用简单 MAPI 配置文件。

5.5 SQL Server 连接组件的增强功能

本节讨论对增强连接组件的 SQL 服务器 2000年所包含的 SP3a。
5.5.1 Microsoft 数据访问组件的更新
在 SP3a 中引入

SP3a 包括更新 Microsoft 数据访问组件 (MDAC)。当安装了 SP3a 时还会同时安装了 MDAC 2.7 Service Pack 1a。MDAC 2.7 SP1a 有 SQL Server 2000 (MDAC 2.6) 由安装的 MDAC 的版本中没有的功能更改,但它不会包括修补程序和安全增强功能。MDAC 2.7 SP1a 包括到 MSXML 3 SP3 升级。

注意未安装此版本的 MDAC,如果安装程序检测到相同的版本或较新版本。

此版本的 MDAC 有关的详细信息,请参阅在 microsoft.com 上的 Microsoft 通用数据访问 Web 站点,在此页。将在知识库文章 326848 记录包括在此版本的 MDAC 的修补程序。您可以从 Microsoft 产品支持服务知识库访问这篇文章。
5.5.2 支持 QLogic 虚拟接口体系结构
在 SP3 中引入

SQL Server 现在支持 QLogic 虚拟接口构架 (VIA) 系统区域网络 (SAN) 实现。若要启用连接 SQL Server 支持通过 QLogic VIA,客户端和服务器计算机必须提供一个名为 Vihosts 在相应的 Windows system32\drivers\etc 文件夹中的文件中的 IP 地址解析。
The Vihosts file should be formatted as follows:

<VI IP Address of server computer> <SERVER_COMPUTERNAME>

<VI IP Address of client computer> <CLIENT_COMPUTERNAME>

For example:

139.4.130.1  SQLCOMPUTER

139.4.130.2  SQLCLIENT

从 VIA 在各自 QLogic 使用 IP 地址网络卡和实际的计算机名称。否则,到命名实例,或与其他 IP 协议 (如 TCP 或命名管道,无法建立连接。Vihosts 文件不是 Giganet VIA 连接所必需的。

注意您必须通过使用客户端网络实用工具来识别正确的 VIA 客户端计算机上的供应商。在供应商中选择适当的值下拉框中。此外应该通过服务器网络实用工具的服务器计算机上完成相应的操作。

5.6 元数据服务功能增强

此部分讨论了到 SQL Server 2000 元数据服务附带 SP3a 的增强功能。
5.6.1 在 Unicode 元数据浏览器导出
在 SP1 中引入

元数据浏览器现在将导出在 Unicode 中的基于 XML 的元数据。之前 SQL Server 2000 SP1,浏览器导出不支持非英语字符的 ANSI 代码。此功能的更改是对用户不可见的。为此 SP3a 发行版的导出的数据总是表示为 Unicode。 您可以仍在 ANSI 代码来导出的注册表值设置为 0 的主要 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Repository\Engine\XMLExport。下面的列表表示您可以设置对此注册表项的值:
  • NOOBJID = 1
  • NOHEADER = 2
  • 缩进 = 4
  • UNICODE = 8
  • LOGUNMAPPEDTAGS = 16
  • EXPORTBASE = 32
有关每个标志的详细信息,请参阅 SQL Server 联机丛书中的"IExport::Export 方法"。
5.6.2 脚本支持已禁用
在 SP3 中引入

在信息模型中的脚本支持已被禁用。 在安装 SP3a 之后您将收到以下错误,如果您的应用程序访问的属性或为其定义脚本的方法:
EREP_SCRIPTS_NOTENABLED

若要启用脚本支持

如果希望继续执行脚本可以使用以下过程创建一个注册表设置,使脚本支持。
  • 打开注册表编辑器,然后定位到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft。
  • 创建一个名为 资源库 (如果尚不存在) 的注册表项,然后创建一个子项,名为引擎,以使路径等于 Repository\Engine。
  • 引擎 的注册表项上添加一个新的 DWORD 值命名 AllowScripting,并将该值设置为 1。如果您想禁用脚本以后,设置此新的注册表项的值为 0
重要您应该始终安全的信息模型和 $ 知识库数据库,以防止未经授权的访问。
5.6.3 新 RepositoryUser 角色访问知识库信息
在 SP3 中引入

SQL Server msdb 数据库中包含一组的表、 存储的过程和存储所使用的元数据服务知识库引擎的信息的视图。SP3 中, 新的专用的角色名为 RepositoryUser 已添加,并且必须用于访问和更新知识库信息。此角色已被授予创建、 读取、 更新、 删除,和对这些对象执行权限。public 角色,不再具有对这些对象的权限。 .

这种更改会影响现有的存储库对象除了由知识库引擎在将来创建的任何其他对象。必须将用户和访问存储库通过 公共 角色的应用程序添加到 RepositoryUser 角色。

5.7 数据转换服务增强

此部分讨论了到 SQL Server 2000 数据转换服务所包含的 SP3a 的增强功能。
5.7.1 DTS 向导不再限制为 255 字符的字符串列
在 SP2 中引入

当您将数据导出到文本文件时,DTS 导入/导出向导现在将配置写入多达 8000 个字符,包含字符串类型数据的任何列的包。
5.7.2 记录有关 SQL Server 代理程序运行的 DTS 包的安全上下文


在 SP2 中引入

SQL Server 代理记录在作业中的每个步骤在其下运行的安全上下文。在 SP3 或更高版本中,安全上下文将出现在作业历史记录对话框中。当您运行一个 DTS 包从作业中步骤时,SQL Server 代理记录在其下运行该程序包的用户帐户。此信息可帮助管理员诊断权限和 $ 身份验证来计划的服务器上运行的 DTS 包时出现的问题。
5.7.3 SQL Server 代理代理帐户改进
在 SP2 中引入

SP2,才能存储在服务器上的 DTS 包不能运行 SQL Server 代理代理帐户的凭据下除非代理帐户必须在其中运行 (在作业运行从 xp_cmdshell) 的情况下服务器或 (在代理程序作业) 的情况下,代理帐户的用户临时文件夹的访问。因此,用户经常不得不调整 SQL Server 或 SQL 代理启动帐户,使其指向被同时启动的可访问的目录和代理帐户的 C:\Temp 如 TEMP 环境变量。SP2 及更高版本,DTS 已得到增强,可以使用系统临时文件夹,如果用户临时文件夹已不可用,极大地减少这些调整。
5.7.4 保存到元数据服务默认情况下禁用
在 SP3 中引入

默认情况下,SP3 和更高版本的禁用该选项可以存储 DTS 包 元数据服务 中。这意味着元数据服务选项未出现在 保存 DTS 包 对话框中的位置下拉列表中。此外,保存、 日程,和在 DTS 导入/导出向导中的复制包页面上已禁用此选项。

若要允许保存在元数据服务中的包
  • 在 SQL Server 企业管理器中用鼠标右键单击 数据转换服务 节点,单击 属性,然后再单击 启用将保存到 元数据服务。
注意您必须具有修改此属性的管理员权限登录。

在禁用该选项可将包存储在元数据服务时,您可以从元数据服务加载现有程序包,并编辑它们,并 保存 它们到元数据服务使用保存选项。 但是,元数据服务不是从 另存为 可用选项。例如对于您不能重新保存到元数据服务包使用不同的名称。

5.8 XML 增强功能

下面的主题的 XML 和 SQLXML SP3a 中的讨论的增强。
5.8.1 XPath 表达式的改进验证
在 SP3 中引入

为 SP3 的已安装与 SQL Server 2000 (MSXML 2.6) 的 XPath 表达式中允许使用谓词来按照特殊字符缩写,用于标识在当前的上下文节点的 MSXML 版本之前的由表示 XPath 语法中的句点 (.)。这违反了 XPath 语法规范要求该字符跟在位置路径表达式。

应用 SP3 或更高版本,作为 MDAC 升级的一部分安装 MSXML (3.0 SP3) 的更新的版本时。 有关详细的信息,请参阅节 5.5.1 更新 Microsoft 数据访问组件。

使用 MSXML 此新版本谓词不能立即按当前上下文节点缩写特殊字符。 XPath 表达式中 SQLXML 的使用有问题的语法的查询 (对 XPath 查询批注映射架构和转换的 SQLXML 结果写入的 XSLT 样式表中查询) 将失败后您升级到 SP3 或更高版本

以防止这些故障、 找出并修复任何使用不正确的语法的表达式。例如对于如下面的 xsl:if 元素中的测试属性的值是无效的因为指定的 XPath 表达式的语法在的谓词 [@ ResourceTypeID ="2"],紧随在特殊字符的缩写,用于标识当前上下文节点。

下面的语句以前未生成错误,将失败后 SP3 或更高版本安装。
xsl:if test=".[@ResourceTypeID='2']">
To prevent a failure, the XPath expression must be amended as follows:

<xsl:if test="@ResourceTypeID='2'">

5.9 虚拟备份设备 API 增强功能

以下项目将应用于 SQL Server 2000 虚拟备份设备 API。
5.9.1 捕获多个数据库中单个的快照

在 SP2 中引入

虚拟的备份设备 API 允许将 SQL Server 2000 集成到他们的产品的 isv。此 API 被工程中提供最大限度的可靠性和性能。它完全支持 SQL Server 2000,包括的热和快照备份功能全面的备份和恢复功能。

在 SP1 中以及更早版本,无法冻结并一次备份多个单个数据库。SP3 或更高版本现在提供了对冻结和捕获通过 VDC_PrepareToFreeze 命令的一个快照中的多个数据库的服务器端支持。

虚拟的备份设备规格 SP3a 中包含有关 VDC_PrepareTo 冻结 命令的更新的信息。虚拟设备接口的头文件 (Vdi.h) 的更新的版本可以在找 \Devtools\Include SP3a 安装目录中

您可以从 Microsoft 下载中心在 Microsoft SQL Server 下载网站上下载更新的规范。

5.10 错误报告

在 SP3 中引入

默认情况下被禁用 Microsoft SQL Server 错误报告。您可以通过 SQL Server 设置或 Analysis Services 安装的安装过程中启用它,或通过在企业管理器或 服务器属性 对话框中 服务器属性 对话框的安装后框在 Analysis Manager。启用错误报告时正在运行 SQL Server 安装程序将允许 SQL Server 数据库引擎和 SQL Server 代理程序的错误报告。启用错误报告时正在运行 Analysis Services 安装程序将允许 Analysis Services 的错误报告。如果您想要启用错误报告 SQL Server 和 Analysis Services,则必须启用报告 SQL Server SQL Server 设置和 Analysis Services 同时运行 Analysis Services 安装程序在运行时错误。

如果启用了此功能 SQL Server 被配置为在向 Microsoft 发送报告自动如果 SQL Server 数据库引擎中、 SQL Server 代理或 SQL Server Analysis Services 中发生致命错误。Microsoft 使用以提高 SQL Server 功能的错误报告,并将视为机密的所有信息。

有关错误的信息将通过安全 (HTTPS) 发送到 Microsoft,它使用的存储位置的连接限制的访问。或者,可以将此信息发送到您自己公司错误报告的服务器。

错误报告中包含以下信息
  • SQL Server 问题发生时的状态。
  • 操作系统版本及计算机硬件信息。
  • 数字产品 ID,它可以用来标识您的许可证。
  • 您的计算机的网络 IP 地址。
  • 从内存或文件引起错误的过程的信息。
Microsoft 并不会有意收集您的文件、 姓名、 地址、 电子邮件地址或任何其他形式的个人信息。错误报告可以但是,包含从内存或文件引起错误的过程的特定于客户的信息。虽然此信息可能可用于确定您的身份,但是 Microsoft 不会为此目的使用此信息。

有关 Microsoft 错误报告数据收集策略,请参阅此 Microsoft Web site

如果您启用错误报告,并且发生致命错误可能会看到来自 Microsoft 的响应,指向有关特定错误的 Microsoft 知识库文章的 Windows 事件日志中。响应可能看起来类似于下面的示例:
Source = MSSQLServerOlapServicesDW 
EventID = 1010
data = http://support.microsoft.com/support/misc/kblookup.asp?id=Q123456
&iBucketTable=1&iBucket=39980&Cab=21474432.cab&LCID=1033
&OS=5.1.2600.2.00010100.0.0
使 SQL Server 数据库引擎和 SQL Server 代理的错误报告中,转到 SQL Server 属性 (常规选项卡) 在企业管理器中,并清除 启用错误报告 复选框。若要使错误报告的 Analysis Services 转到服务器属性在 Analysis Manager 并清除 启用错误报告 复选框。如果 SQL Server (数据库引擎和 SQL Server Agent) 和 Analysis Services 启用了错误报告,您必须禁用错误报告 SQL Server 和 Analysis Services 分别。

5.11 英语查询增强

在 SP21 中引入

Microsoft 发布了一种增强安全性的英文查询应用程序。此增强功能未安装该 service pack 的一部分。但是,则建议您应用它如果您使用英文查询。在文件夹 \EQHotfix SP3a 光盘上位于安全增强功能。在 Microsoft 产品支持服务知识库提供了有关在英文查询增强的详细信息。搜索知识库文章 297105。

5.12 db-library 和用于 c 语言的嵌入式的 SQL

在 SP1 中引入

虽然仍支持 DB 库和嵌入式 SQL 的 C api SQL Server 2000 中,SQL Server 没有将来的版本将包括所需程序的应用程序使用这些 api 的文件。从使用 DB 库和嵌入式 SQL 用于 c 语言编写的现有应用程序的连接仍会在下一版本的 SQL Server,支持,但在将来的版本中,将会丢弃这种支持。在编写新的应用程序时则避免使用这些组件。修改现有的应用程序时, 您要删除这些技术上的依赖项强烈建议的。而不是 db-library 或用于 c 语言的嵌入式 SQL,您可以使用 ADO,OLE DB 或 ODBC SQL Server 中访问数据。有关这些技术的详细信息,请参阅 SQL Server 联机丛书。

属性

文章编号: 889551 - 最后修改: 2007年11月16日 - 修订: 3.8
这篇文章中的信息适用于:
  • Microsoft SQL Server 2000 Desktop Engine (MSDE) SP3a
  • Microsoft SQL Server 2000 Analysis Services
  • Microsoft SQL Server 2000 Developer Edition SP3a
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Enterprise Evaluation Edition
  • Microsoft SQL Server 2000 Personal Edition SP3a
  • Microsoft SQL Server 2000 标准版
关键字:?
kbmt kbinfo KB889551 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 889551
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com