演练:非宿主事件提供程序部署

本演练说明如何为 Notification Services 实例部署非宿主事件提供程序。 如果非宿主事件提供程序位于未运行 Notification Services 引擎组件的服务器上,可使用下列部署步骤。

ms172475.note(zh-cn,SQL.90).gif注意:
Notification Services 的所有部署都是唯一的。请将本主题中的过程用作指南,开发和测试您自己的部署指令。

必备项

部署某个非宿主事件提供程序前,请确保已安装了该非宿主事件提供程序,并向该事件提供程序使用的帐户授予了所有必需的 Microsoft Windows 权限。为实现本演练的目的,非宿主事件提供程序使用的帐户为 DOMAIN\EventProvider Windows 帐户。

还需要验证 数据库引擎 是否启用了 TCP/IP 或命名管道网络协议。在 SQL Server 2005 中,默认情况下,禁用这些网络协议。有关详细信息,请参阅 SQL Server 外围应用配置器

非宿主事件提供程序服务器任务

在非宿主事件提供程序服务器上执行以下步骤。但是,如果非宿主事件提供程序位于已注册了该实例的服务器上,则可以在该服务器跳过这些步骤。

步骤 1:安装 Notification Services 客户端组件

  1. 安装 Notification Services 客户端组件。

    有关详细信息,请参阅安装 SQL Server Notification Services

步骤 2:注册 Notification Services 实例

  1. 在**“开始”菜单上,依次指向“所有程序”“Microsoft SQL Server 2005”“Notification Services”,再单击“Notification Services 命令提示”**以打开Notification Services 命令提示符窗口。

  2. 键入下面的命令来注册实例且不创建 Windows 服务。

    nscontrol register -name instanceName -server databaseServer

SQL Server 任务

必须向 DOMAIN\EventProvider 帐户授予 SQL Server 和数据库权限。如果将 SQL Server 客户端组件安装在了非宿主事件提供程序服务器上,可在该服务器上执行这些步骤。

授予 SQL Server 和数据库权限

  1. 打开命令提示符窗口。

  2. 在命令提示符处,键入下面的命令来为 DOMAIN\EventProvider 帐户创建 SQL Server 登录:

    sqlcmd -E -S databaseServer -Q "CREATE LOGIN [DOMAIN\EventProvider] FROM WINDOWS;"

  3. 键入下面的命令,授予 DOMAIN\EventProvider 帐户访问实例数据库的权限,并将该帐户添加到 NSEventProvider 数据库角色中:

    sqlcmd -E -SdatabaseServer-Q "USEinstanceDatabase;

    **    CREATE USER [DOMAIN\EventProvider];**

    **    EXEC sp_addrolemember N'NSEventProvider', N'DOMAIN\EventProvider';"**

  4. 如果应用程序具有单独的数据库,则键入下面的命令,授予 DOMAIN\EventProvider 帐户访问应用程序数据库的权限,并将该帐户添加到 NSEventProvider 数据库角色中:

    sqlcmd -E -S databaseName -Q "USE applicationDatabase

    **    CREATE USER [DOMAIN\EventProvider];**

    **    EXEC sp_addrolemember N'NSEventProvider', N'DOMAIN\EventProvider';"**

    如果实例承载了多个应用程序,则为每个应用程序数据库重复此步骤。

现在您已经部署了非宿主事件提供程序。应该能够向通知应用程序提交事件了。

疑难解答

如果无法提交事件,请从 Notification Services 命令提示符运行下面的命令来检查实例状态:

nscontrol status-name instanceName

验证是否已启用了 Notification Services 实例及其应用程序。有关详细信息,请参阅查看实例、应用程序和组件的状态

此外,还要检查 Windows 应用程序日志中是否包含错误。有关详细信息,请参阅 对 Notification Services 进行故障排除

请参阅

概念

部署 Notification Services 实例
部署非宿主事件提供程序
部署订阅管理界面

其他资源

部署 Notification Services

帮助和信息

获取 SQL Server 2005 帮助