如何:將 Notification Services 2.0 執行個體移轉到 SQL Server 2005 (SQL Server Management Studio)
更新: 2006 年 4 月 14 日
如果您擁有一個在 Microsoft SQL Server 2000 上執行的現有 Notification Services 2.0 執行個體,您可以升級資料庫和 Notification Services,然後將 Notification Services 執行個體移轉到 Microsoft SQL Server 2005。
下列程序顯示如何使用 SQL Server Management Studio 來升級執行個體。
重要事項: |
---|
您可在許多不同組態中部署 Notification Services 的執行個體。請使用下列程序作為開發及測試移轉程序的方針。 |
若要準備伺服器升級
使用 nscontrol 命令提示字元公用程式的 Notification Services 2.0 版本,停用 Notification Services 的執行個體:
- 在 [開始] 功能表上,依序指向 [程式集] 和 [Microsoft SQL Server Notification Services],然後按一下 [Notification Services 命令提示字元]。
- 輸入下列命令來停用執行個體:
nscontrol disable -nameinstance_name
在執行 NS$instanceName Windows 服務的每一部伺服器上,停止服務:
- 在 [開始] 功能表上,依序指向 [程式集] 和 [Microsoft SQL Server Notification Services],然後按一下 [Notification Services 命令提示字元]。
- 輸入下列命令來停止執行個體:
**net stop NS$**instanceName
在具有事件提供者、產生器、散發者或訂閱管理介面的每一部伺服器上,取消註冊執行個體。
- 在開啟的 [Notification Services 命令提示字元] 視窗中輸入下列命令:
nscontrol unregister -nameinstance_name - 關閉 [命令提示字元] 視窗。
- 在開啟的 [Notification Services 命令提示字元] 視窗中輸入下列命令:
若要升級 Database Engine 和安裝 Notification Services
使用 SQL Server 2005 安裝程式,將 Database Engine 從 SQL Server 2000 升級到 SQL Server 2005。如需詳細資訊,請參閱<升級 Database Engine>。
在執行事件提供者、產生器、散發者或訂閱管理介面的每一部伺服器上,安裝 SQL Server 2005 Notification Services。
如果 Notification Services 和資料庫位在同一部伺服器上,您可以同時升級資料庫和安裝 Notification Services。
若要移轉 Notification Services 的執行個體
開啟 SQL Server 2005 [Notification Services 命令提示字元] 視窗,並將執行個體資訊加入系統資料庫中:
- 在 [開始] 功能表上,依序指向 [程式集]、[Microsoft SQL Server 2005] 和 [組態工具],再按一下 [Notification Services 命令提示字元]。
- 輸入下列命令來修復執行個體中繼資料:
nscontrol repair -nameinstance_name-databaseinstanceDatabaseName-schemainstanceDatabaseSchema-serverdatabaseServer
使用 SQL Server Management Studio 來升級執行個體和應用程式資料庫資料:
- 在 [開始] 功能表上,依序指向 [程式集] 和 [Microsoft SQL Server],然後按一下 [SQL Server Management Studio]。
- 連接到主控執行個體和應用程式資料庫的 SQL Server 執行個體。
- 在 [物件總管] 中,展開 [Notification Services]。
- 以滑鼠右鍵按一下執行個體,指向 [工作],再選取 [升級]。
這樣會升級執行個體和應用程式資料庫中的資料庫結構描述、預存程序和版本號碼。
修改執行個體所主控的每一個應用程式之應用程式定義檔案 (ADF) 中的通知產生規則。
修改使用 Notify() 函數的所有通知產生規則,改為使用 INSERT INTO 語法。例如,請變更下列 Notification Services 2.0 規則:
SELECT dbo.FlightNotificationsNotify(S.SubscriberId, S.DeviceName, S.SubscriberLocale, E.Carrier, E.LeavingFrom, E.GoingTo, E.Price, E.Conditions) FROM FlightEvents E, FlightSubscriptions S WHERE E.LeavingFrom = S.LeavingFrom AND E.GoingTo = S.GoingTo AND ( (E.Carrier = S.Carrier) OR (S.Carrier = '*') ) AND E.Price < S.Price
請改成下列語法,此語法不再使用 Notify() 函數,而是選取資料並將它插入以通知類別命名的檢視中 (FlightNotifications):
INSERT INTO FlightNotifications(SubscriberId, DeviceName, SubscriberLocale, Carrier, LeavingFrom, GoingTo, Price, Conditions) SELECT S.SubscriberId, S.DeviceName, S.SubscriberLocale, E.Carrier, E.LeavingFrom, E.GoingTo, E.Price, E.Conditions FROM FlightEvents E, FlightSubscriptions S WHERE E.LeavingFrom = S.LeavingFrom AND E.GoingTo = S.GoingTo AND ( (E.Carrier = S.Carrier) OR (S.Carrier = '*') ) AND E.Price < S.Price
修改 ADF 和 ICF 中的版本號碼。(選擇性)
如果您已移動執行個體,請更新 ADF 中的 SystemName 值和 ICF 中的 SqlServerSystem 值。這些值可能是參數,表示這些值是在 ParameterDefaults 節點中,或在建立執行個體時提供。
在 [物件總管] 中,以滑鼠右鍵按一下 Notification Services 執行個體,指向 [工作],然後選取 [升級]。
在 [更新] 對話方塊中提供所要求的資訊。更新執行個體及其應用程式,會將 ADF 和 ICF 的變更套用至資料庫。
請務必選取 [更新執行個體之後啟用它]。
在先前註冊執行個體的每一部伺服器上,註冊該執行個體。
SQL Server Management Studio 只會在本機電腦中註冊執行個體。若要使用 SQL Server Management Studio 來註冊執行個體,請以滑鼠右鍵按一下執行個體,指向 [工作],再選取 [註冊]。
如果您需要在沒有安裝 SQL Server Management Studio 的伺服器中註冊執行個體,請使用 SQL Server 2005 nscontrol register 命令列公用程式來註冊該執行個體。
以使用 SQL Server 2005 組件和 Microsoft .NET Framework 2.0 編譯的新元件,取代任何自訂元件。
如果使用 COM Interop,請重新註冊核心 Notification Services 組件。如需詳細資訊,請參閱<如何:註冊 COM Interop 的核心 Notification Services 組件>。
在 [物件總管] 中,以滑鼠右鍵按一下執行個體,並選取 [啟動]。
請參閱
工作
將 Notification Services 2.0 執行個體移轉到 SQL Server 2005
如何:將 Notification Services 2.0 執行個體升級到 SQL Server 2005 (命令提示字元)
其他資源
管理執行個體與應用程式的如何主題 (Notification Services)
nscontrol register 命令