nscontrol enable 命令
更新: 2005 年 12 月 5 日
啟用指定的 SQL Server Notification Services 執行個體、應用程式或元件。
語法
nscontrol enable
[-nologo]
[-help]
[< component > [...n]]
-name instanceName
[-server databaseServer]
[-application applicationName]
[-sqlusername sqlUserName -sqlpassword sqlPassword]
< component > ::=
-events [systemName]
| -generator
| -distributor [ systemName ]
| -subscriptions
| -subscribers
引數
- -nologo
隱藏執行 nscontrol 命令時所顯示的產品和版本聲明。
- -help
顯示命令語法。
< component >
指定要啟用的元件。當您執行 nscontrol enable 時,您可以指定零或多個元件。如果您沒有指定元件名稱,就會啟用執行個體或應用程式的所有元件。如果您指定元件,但沒有利用 -application 引數來指定應用程式名稱,就會啟用執行個體所主控之所有應用程式中的所有相符元件。
< component> 可以是下列中的任何引數:
引數 描述 -distributor [systemName]
啟用執行個體或應用程式的散發。如果您指定了散發者系統名稱,便只會啟用這個系統的散發者。否則,會啟用執行個體或應用程式的所有散發者。
-events [systemName]
啟用執行個體或應用程式的主控事件提供者。如果您搭配系統名稱指定了 -events,便只會啟用這個系統的主控事件提供者。否則,會啟用執行個體或應用程式的所有主控事件提供者。
-generator
啟用產生器。
-subscriptions
啟用訂閱管理。
-subscribers
啟用 Notification Services 執行個體的訂閱者管理。
-nameinstanceName
這是 nscontrol enable 所影響的執行個體名稱。如果您指定 –name 引數,但沒有指定 –application 或元件,nscontrol 公用程式會啟用所有執行個體應用程式和元件。請參閱 -server 引數,以取得搭配 -server 引數來使用 -name 引數的相關資訊。
-serverdatabaseServer
這是主控執行個體和應用程式資料庫的伺服器名稱。如果您利用 SQL Server 的具名執行個體來主控資料庫,您必須利用 <servername>\<instancename> 格式來指定伺服器名稱和執行個體名稱。當您在先前利用 nscontrol register 命令將執行個體登錄在其中的系統上執行 nscontrol enable 時,請使用 -name 引數,不要用 -server 引數。nscontrol 公用程式會讀取執行個體的登錄資訊來確定 SQL Server 執行個體的名稱。
當您在執行個體尚未登錄在其中的系統上執行 nscontrol enable 時,您必須同時使用 -name 和 -server 引數,因為 nscontrol 公用程式同時需要 Notification Services 和 SQL Server 的執行個體名稱,才能找到執行個體資料庫。
當您指定 -server 引數時,nscontrol 公用程式會忽略執行個體的任何登錄值。
- -applicationapplicationName
這是要啟用所有元件或其中一個元件的應用程式名稱。如果您沒有指定應用程式名稱,就會啟用執行個體所主控的所有應用程式的指定元件。
-sqlusernamesqlUserName
這是用來連接 SQL Server 的 SQL Server 登入。如果您利用 SQL Server 驗證來連接 SQL Server,請利用這個引數來指定登入。另外,也請利用 -sqlpassword 引數來指定密碼。
如果您是使用 Windows 驗證,請勿指定 -sqlusername 和 -sqlpassword 引數。
重要事項: 可能的話,請使用「Windows 驗證」。
- -sqlpasswordsqlPassword
這是與 -sqlusername 登入相關聯的密碼。這個引數必須搭配 -sqlpassword 引數一起使用。
備註
nscontrol enable 命令會更新資料庫中的值,而將指定元件的狀態改成「啟用暫止」。執行個體狀態儲存在執行個體資料庫中。個別元件狀態儲存在應用程式資料庫中。
當您執行 nscontrol enable 時,Notification Services 會向所有元件廣播所需要的狀態變更。所有執行中的元件都回應這項變更之後,「啟用暫止」狀態會改成「已啟用」。除了訂閱者和訂閱元件,引擎 (通常是 NS$instance_name Windows 服務) 必須在執行中,元件狀態才能從「啟用暫止」改成「已啟用」。不過,將狀態從「啟用暫止」改成「已停用」,或從「停用暫止」改成「已啟用」,服務並不需要在執行中,因為這些動作只會取消暫止作業。
在 nscontrol enable 修改資料庫之後,它會顯示執行個體、應用程式和元件目前的狀態。如需狀態值的描述,請參閱<檢視執行個體、應用程式與元件的狀態>。
當 NS$<instance_name> 服務啟動時,它會先判斷執行所在的位置 (它的主機名稱),再比較這個值和每個散發者、主控的事件提供者以及產生器的 SystemName 值。如果主機名稱符合 SystemName 值,服務會檢查元件的狀態。如果元件已啟用,便會啟動它。
當服務在執行中,它會每隔 30 秒檢查一次資料庫來判斷主控事件提供者、產生器和散發者的狀態。
訂閱者和訂閱狀態會快取在資料庫伺服器中,訂閱管理物件會先檢查這個狀態,再執行訂閱或訂閱者作業。
權限
用來執行 nscontrol enable 的帳戶或 -sqlusername 引數所指定的 SQL Server 登入,可以利用個別應用程式和執行個體資料庫中之 NSAdmin 資料庫角色的成員資格來取得適當的權限。db_owner 資料庫角色以及系統管理員 (sysadmin) 和資料庫建立者 (dbcreator) 固定伺服器角色的成員,也可以執行 nscontrol enable。
此帳戶也必須有權限執行 Notification Services 二進位檔;此權限已授與 Administrators 和 SQLServerNotificationServicesUser Windows 群組的成員。
範例
A. 啟用 Notification Services 的執行個體
下列範例會啟用名稱為 StockInstance
的整個 Notification Services 執行個體。您必須在執行下列命令的電腦中登錄這個執行個體。
nscontrol enable -name StockInstance
B. 啟用單一應用程式
下列範例會啟用 Notification Services 之 StockInstance
執行個體上 Stock
應用程式的所有元件。nscontrol
命令會利用 Windows 驗證來連接 SQL Server。您必須在執行命令的電腦中登錄這個執行個體。
nscontrol enable -name StockInstance -application Stock
C. 啟用所有主控事件提供者
下列範例會啟用 Notification Services 的 StockInstance
執行個體中之所有應用程式的主控事件提供者。nscontrol
**** 命令會利用 Windows 驗證來連接 SQL Server。您必須在執行命令的電腦中登錄這個執行個體。
nscontrol enable -name StockInstance -events
D. 從管理電腦中啟用執行個體
如果您從尚未登錄 StockInstance
的電腦中執行 nscontrol enable
,您必須利用 -server
引數來提供 SQL Server 執行個體名稱。下列範例顯示,當資料庫位於 SQL Server 的執行個體 nsuetest
中時,該如何啟用執行個體。nscontrol
**** 命令會利用 Windows 驗證來連接 SQL Server。
nscontrol enable -name StockInstance -server nsuetest
E. 利用 SQL Server 驗證來啟用 Notification Services 的執行個體
下列範例會利用 SQL Server 驗證來連接 SQL Server,以啟用名稱為 StockInstance
的整個 Notification Services 執行個體。您必須在執行下列命令的電腦中登錄這個執行個體。
nscontrol enable -name StockInstance -sqlusername SqlUser
-sqlpassword sQl-P@sWd
請參閱
參考
其他資源
說明及資訊
變更歷程記錄
版本 | 歷程記錄 |
---|---|
2005 年 12 月 5 日 |
|