DST 時區更新為 SQL Server 2005 通知服務和 SQL Server 2000 通知服務

文章翻譯 文章翻譯
文章編號: 974412 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

簡介

本文中的指令碼用來更新以符合發行的 Microsoft Windows 國際時區 DST 更新的 SQL NS 執行個體。Microsoft 發行新的 Windows DST 更新之後新的 SQL NS 指令碼可能會釋放更新 SQL NS 執行個體。下面的 Windows 知識庫文件會顯示目前的指令碼符合哪些 Windows DST 發行。 目前的指令碼更新 SQL NS 以符合最新的 Windows DST 更新是由 Microsoft 知識基底本文所述:
976098Microsoft Windows 作業系統的十二月 2009年累積時區更新

更新指令碼會取代並會取代所有先前發行的 SQL NS DST 更新而且可以套用到無論哪一種 DST 更新存在,或如果沒有 DST 更新都存在的 SQL NS 執行個體。

如需有關 Windows 作業系統的 DST 變更的詳細資訊,請造訪下列 Microsoft 網站]:
http://support.microsoft.com/gp/dst_prodlist
附註這個 Web 站台列出受 DST 和描述 「 最新累積 DST 和時區更新的 Windows 文章 「 Microsoft 知識庫 」 中的產品。

這份文件適用於下列版本的 Microsoft SQL Server 通知服務:
  • Microsoft SQL Server 2000 通知服務 2.0
  • Microsoft SQL Server 2000 通知服務 2.0 服務封裝 1 (SP1)
  • Microsoft SQL Server 2005 通知服務
  • Microsoft SQL Server 2005 通知服務 Service Pack 1 (SP1)
  • Microsoft SQL Server 2005 通知服務 Service Pack 2 (SP2)
  • Microsoft SQL Server 2005 通知服務 Service Pack 3 (SP3)

解決方案

如果要解決這個問題,請依照下列步驟執行:
  1. 停止事件提供者通知服務產生器服務和所有電腦上的所有通知服務散發者服務。

    附註如需有關如何啟動及停止服務,請造訪下列 Microsoft 開發 o 人 h 員 ? 工 u 具 ? 網路 (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 通知服務會將 DST 資訊儲存在 NSTimeZoneDstOffsets 資料表的主應用程式資料庫。建立的 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 開發 o 人 h 員 ? 工 u 具 ? 網路 (MSDN) Web 網站:
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
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本: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