演练:单台服务器部署
此部署演练演示如何在数据库服务器上部署 Notification Services 的实例。通常,您可以将此类型的部署用于供内部使用的中小型应用程序,而不可用于大型应用程序或商用应用程序。
注意: |
---|
Notification Services 的所有部署均唯一。使用本主题中的步骤作为开发和测试您自己的部署说明的准则。 |
下图显示了本部署方案的硬件配置。NS1 服务器具有多个磁盘驱动器,这可以提高数据库和通知应用程序的性能。
必备项
在部署 Notification Services 实例之前,请验证是否已具备所有必备项:
- NS1 已安装了操作系统,并且应用了所有可用的 Service Pack 和更新软件包。
- 计算机符合 Microsoft SQL Server 要求。有关详细信息,请参阅安装 SQL Server 2005 的硬件和软件要求。
- 使用对服务器具备管理权限的帐户来运行这些过程。
- 您或您的域管理员已为 Notification Services 创建或指定了要使用的帐户。对于这些过程,此帐户为 DOMAIN\NSService。
- 现在已为源文件和数据文件创建了任何所需的文件共享,并已向帐户和 DOMAIN\NSService 帐户授予所需的权限。
- 如果您有任何 Notification Services 组件位于远程服务器上,则在数据库引擎 上启用 TCP/IP 或 named pipes 网络协议。在 Microsoft SQL Server 2005 中,这些网络协议在默认情况下处于禁用状态。有关详细信息,请参阅 SQL Server 外围应用配置器。
部署概述
在此部署演练中,您将完成下列任务:
- 安装 Notification Services 和数据库引擎。
- 将 Microsoft Windows 权限授予 NSService 帐户。
- 创建和启用 Notification Services 的实例。
- 注册 Notification Services 的实例,该实例可创建运行 Notification Services 引擎组件的 Windows 服务。
- 将数据库权限授予 Windows 帐户。
注意: Notification Services 也支持 SQL Server 身份验证。 - 准备开始生成通知时,请启动 Notification Services 的实例。
下面的说明将使用 Notification Services 命令提示符来演示如何编写部署脚本。可以使用 SQL Server Management Studio 来部署 Notification Services 的实例。有关使用 SQL Server Management Studio 的一般部署说明,请参阅 SQL Server Notification Services 示例。
NS1 任务
在服务器 NS1 上执行下列步骤,以便在数据库服务器上部署 Notification Services 的实例。
步骤 1:安装软件
在 NS1 上安装 SQL Server 数据库引擎 和 Notification Services。还可以安装工作站组件,但在此演练的步骤中不需要这些组件。
有关安装组件的详细信息,请参阅安装 SQL Server Notification Services。
步骤 2:授予 Windows 权限
在**“开始”菜单上,依次指向“所有程序”、Microsoft SQL Server 2005 和 Notification Services,然后单击“Notification Services 命令提示符”**打开 Notification Services 命令提示窗口。
将 DOMAIN\NSService 帐户添加到本地 Users 组。在命令提示符下,键入下列 net localgroup 命令:
net localgroup users DOMAIN\NSService /add
有关将帐户添加到本地组的详细信息,请参阅 Windows 文档。
步骤 3:创建并启用 Notification Services 的实例
在命令提示符下,键入下列命令创建实例和应用程序数据库:
nscontrol create -in "ICFPath\ICFName"
根据 ICF,您可能需要提供其他命令行参数。
键入下列命令,启用实例:
nscontrol enable -nameNSInstanceName-serverdatabaseServer
引擎组件处于“启用挂起”状态,因为 Notification Services 引擎尚未安装和启动。
步骤 4:注册 Notification Services 的实例
在命令提示符下,键入下列命令:
nscontrol register -name NSInstanceName -server databaseServer -service
-serviceusername DOMAIN\NSService-servicepassword****"password"**
此命令完成后,本地计算机上将存在名为 NS$instanceName 的 Windows 服务。
注意: |
---|
如果使用 SQL Server 身份验证,则在注册实例时需提供 SQL Server 登录名和密码,然后再将权限授予此登录帐户。有关详细信息,请参阅 nscontrol register 命令。 |
步骤 5:授予数据库权限
键入下列命令,为 DOMAIN\NSService 帐户创建 SQL Server 登录帐户:
sqlcmd -E -SdatabaseServer-Q "CREATE LOGIN [DOMAIN\NSService] FROM WINDOWS;"
键入下列命令,在实例数据库中创建 DOMAIN\NSService 用户以及将该用户添加到 NSRunService 数据库角色:
sqlcmd -E -SdatabaseServer-Q "USEinstanceDatabase**;**
** CREATE USER [DOMAIN\NSService];**
** EXEC sp_addrolemember N'NSRunService', N'DOMAIN\NSService';"**
如果您具有单独的应用程序数据库,请键入下列命令,在应用程序数据库中创建 DOMAIN\NSService 用户以及将该用户添加到 NSRunService 数据库角色:
sqlcmd -E -SdatabaseServer-Q "USEapplicationDatabase**;**
** CREATE USER [DOMAIN\NSService];**
** EXEC sp_addrolemember N'NSRunService', N'DOMAIN\NSService';"**
如果实例作为多个应用程序的宿主,则对每个应用程序数据库重复此步骤。
现在,即完成了 Notification Services 实例的部署。将能够加载订阅方和订阅数据,并将事件提交给应用程序。直到启动 Windows 服务后,Notification Services 才会生成通知。下面将讨论 Windows 服务的启动。
启用 Notification Services 实例。
当实例已准备开始生成通知时,请启动 Windows 服务。在服务器 NS1 上,打开命令提示窗口,然后键入下列命令:
**net start NS$**instanceName
有关详细信息,请参阅启动和停止 Notification Services 实例。
疑难解答
如果应用程序未生成通知,请从 Notification Services 命令提示下运行下列命令,以检查该实例的状态:
nscontrol status-name instanceName
验证所有组件均在所需的服务器上运行并处于启用状态。有关详细信息,请参阅查看实例、应用程序和组件的状态。
此外,还需检查 Windows 应用程序日志中的错误。有关详细信息,请参阅对 Notification Services 进行故障排除。
请参阅
概念
部署 Notification Services 实例
部署非宿主事件提供程序
部署订阅管理界面
其他资源
nscontrol create 命令
nscontrol enable 命令
nscontrol register 命令
sqlcmd 实用工具