DST 时区更新为 SQL Server 2005 通告服务和 SQL Server 2000 通告服务

文章翻译 文章翻译
文章编号: 974412 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

简介

在这篇文章中的该脚本用于更新以匹配发布的 Windows 国际时区 DST 更新的 SQL NS 实例。Microsoft 发布新的 Windows DST 更新后,新的 SQL NS 脚本可能会发布更新 SQL NS 实例。Windows 知识库文章下面显示了当前脚本匹配的 Windows DST 版本。 当前脚本更新以匹配最新的 Windows DST 更新的 SQL NS Microsoft 知识基础本文所述:
976098对于 Microsoft Windows 操作系统的十二月 2009年的累积时区更新

更新后的脚本将取代和将替换以前发布的所有 SQL NS DST 更新并可应用到 SQL NS 实例无论哪个 DST 更新存在或没有 DST 更新是否存在。

有关 Windows 操作系统的 DST 更改的详细信息,请访问下面的 Microsoft 网站:
http://support.microsoft.com/gp/dst_prodlist
注意此网站列出了受 DST 和描述了最新累积 DST 和时区更新,Windows 将文章 Microsoft 知识库中相应的产品。

本文适用于以下版本的 Microsoft SQL Server 通知服务:
  • Microsoft SQL Server 2000 通知服务 2.0
  • Microsoft SQL Server 2000 通知服务 2.0 Service Pack 1 (SP1)
  • Microsoft SQL Server 2005 通知服务
  • Microsoft SQL Server 2005 通告服务服务包 1 (SP1)
  • Microsoft SQL Server 2005 通告服务服务包 2 (SP2)
  • Microsoft SQL Server 2005 通告服务服务包 3 (SP3)

解决方案

若要解决此问题,请按照下列步骤操作:
  1. 停止事件提供程序通知服务生成器服务和 $ 在所有计算机上的所有通知服务分发服务器服务。

    注意有关如何启动和停止服务,请访问下面的 Microsoft 开发人员网络 (MSDN) 的网站的详细信息:
    http://msdn2.microsoft.com/en-us/library/aa226855(SQL.80).aspx
  2. 从 Microsoft 下载中心下载以下文件,然后提取到您的计算机脚本。

    注意如果您使用非默认数据库架构,您可能不得不修改自解压缩的脚本。如果使用默认的数据库架构,您没有修改脚本。

    以下文件是可从 Microsoft 下载中心下载:
    收起这个图片展开这个图片
    Download
    Download the MSKB974412.exe package now.有关如何下载 Microsoft 的支持文件的详细信息单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    119591如何获取 Microsoft 的支持文件从联机服务
    Microsoft 扫描此文件的病毒。Microsoft 使用该文件已过帐的日期上获得的最新病毒检测软件。该文件存储在安全增强型服务器上,这有助于防止未经授权的情况下对其进行更改,对该文件。
  3. 单击 开始、 单击 运行,键入 cmd,然后单击 确定
  4. 键入下面的命令,然后按 ENTER 键:
    osql-E-i NSDST.091120.sql-d NSMainDatabase
    注意NSDST.091120.sql 是您在步骤 2 中提取这些文件之一。NSMainDatabase 值,该值代表 SQL Server 通知服务的实例的主数据库的名称。
  5. 重复步骤 4 的通知服务已安装的每个实例的主数据库。
  6. 如果您正在运行 SQL Server 2000 通知服务 2.0年将停止并重新 SQL Server 启动数据库所驻留的计算机上。

    注意如果运行的 SQL Server 2005 通告服务跳过此步骤。
  7. 启动通知服务分发服务器服务的所有计算机上。
  8. 启动通知服务生成器。
  9. 启动事件提供程序。

更多信息

SQL Server 通告服务存储中的主应用数据库 NSTimeZoneDstOffsets DST 的信息。在创建 SQL Server 通知服务的实例时,被创建此表。此表包含 DST 的开始时间、 结束时间和每年达 2025 年为每个时区的偏移量的信息。

已调度的订阅 SQL Server 通知服务中使用 NSTimeZoneDstOffsets 表来确定哪个时间表的作用域中。

在其中发生了变化夏时制时间开始或旧之间发生的已调度的订阅的结束日期开始或结束日期和新的开始或结束日期的时区可能会延迟。这些订阅可能会延迟一小时后的累积时区更新应用于主机操作系统。

您应该运行的通知服务的实例的所有计算机上安装 Windows DST 更新。请注意通告服务不使用本地时间。通知服务使用协调通用时间 (UTC)。但是,通告服务取决于使用当地时间的一些 SQL Server 组件。因此,您应安装通知服务 DST 更新和 Windows DST 更新。

在其中安装这些 DST 更新顺序并不重要。但是,我们建议您先安装 Windows DST 更新,然后安装通知服务 DST 更新。Microsoft 已测试此推荐的顺序。您应该尽可能快地安装这两个 DST 更新。

如何确定是否安装了通知服务

如何确定是否安装了 SQL Server 2000 通告服务



方法 1

在 $ 控制面版中打开添加或删除程序项。如果您注意到下列项,SQL Server 2000 通知服务的原始版本已安装: 安装了 Microsoft SQL Server 通知服务 (2.0.2114.0) ; 如果您注意到下面的项 SQL Server 2000 通知服务 Service Pack 1 (SP1): Microsoft SQL Server 通知服务 2.0 SP1

方法 2

在注册表编辑器中找到以下注册表子项:
HKEY_CLASSES_ROOT\Installer\Products
。 如果您注意到以下注册表子项,SQL Server 2000 通知服务的原始版本已安装:
64942737F6AC0D146AF0B91F262A693C


如果您注意到以下注册表子项,安装 SQL Server 2000 通知服务 Service Pack 1 (SP1): 26ABA4AB609E2B94EBB48C824974CA02

方法 3

在注册表编辑器中找到以下注册表子项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NotificationServices\InstalledVersions
. 如果您注意到
2.0.2114.0
注册表子项,安装原始版本的 SQL Server 2000 通知服务。此外,路径注册表项在 2.0.2114.0 的注册表子项包含以下值:
<InstallPath>\Microsoft SQL Server Notification Services\v2.0.2114.0\Bin
注意: <InstallPath> 代表该文件夹在安装 SQL Server 2000 通知服务的位置。
如果您注意到
2.0.3008.0
注册表子项,SQL Server 2000 通知服务 SP1 安装。此外,路径注册表项在 2.0.3008.0 的注册表子项包含以下值:
<InstallPath>\Microsoft SQL Server Notification Services\v2.0.3008.0\Bin
注意:<InstallPath> 代表该文件夹在安装 SQL Server 2000 通知服务的位置。

如何确定是否安装了 SQL Server 2005 通告服务

要确定是否安装了 SQL Server 2005 通告服务,找到以下注册表项在注册表编辑器中:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\NS\Setup\Version
  • 如果值为
    9.00.1399.06
    ,安装原始版本的 SQL Server 2005 通知服务。
  • 如果值为
    9.1.2047.00
    ,安装 SQL Server 2005 通知服务 SP1。
  • 如果值为 9.2.2042.00,安装 SQL Server 2005 通知服务 SP2。 如果值为 9.3.4035.00,安装 SQL Server 2005 通知服务 SP3。

此更新的自动的安装

您可以编写代码以自动安装此更新。在该的代码中必须首先确定是否通知服务的实例的方法部署,并再安装更新。但是,可在不同的计算机上安装实例的不同组件。在该的代码中,您必须检查是否在 NS$<instancename> 服务正在运行的每台计算机上。如果该 NS$<instancename> 服务正在运行的任何计算机上,在该计算机上部署了该实例。

请注意将有一台计算机正在运行实例的数据库组件。这台计算机可能在运行该 NS$<instancename> 服务。您可以编写代码以确定是否在此计算机运行该 NS $ <instancename>服务。但是,如果采取此措施,您将添加到您的代码的复杂性。因此,您可能更喜欢手动确定是否这台计算机正在运行,NS$<instancename> 服务。 然后,您可以使用代码来自动执行此更新的安装。

参考

有关如何管理 SQL Server 通知服务的服务的详细信息请访问下面的 Microsoft 开发人员网络 (MSDN) 的网站:
http://msdn2.microsoft.com/en-us/library/aa226852(SQL.80).aspx

属性

文章编号: 974412 - 最后修改: 2009年12月10日 - 修订: 2.0
这篇文章中的信息适用于:
  • Microsoft SQL Server 2005 Notification Services
  • Microsoft SQL Server 2000 (all editions)
关键字:?
kbmt kbdatetime atdownload kbqfe kbinfo kbfix kbbug kbexpertiseinter KB974412 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 974412
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