演练:数据库服务器上的订阅管理界面部署
对于基于 Intranet 的通知应用程序,订阅管理界面可以与实例和应用程序数据库位于同一台服务器上。将应用程序和数据库置于同一台服务器上可以简化部署过程,因为不必创建订阅管理界面连接 Microsoft SQL Server 所使用的域帐户。
对于基于 Internet 的应用程序,通常需要将数据库保护在防火墙之后的单独服务器上。
本方案说明如何在数据库服务器上部署基于 ASP.NET 的订阅管理界面。ASP.NET 应用程序使用 Microsoft Windows 身份验证访问数据库。
必备项
在部署基于 ASP.NET 的订阅管理界面之前,请验证是否已满足下列所有前提条件:
- 已安装 Windows,已添加 Internet 信息服务 (IIS) 组件并已启用 ASP.NET。有关说明,请参阅 Windows 文档。
- 如果您在使用 Microsoft Windows XP 或 Microsoft Windows 2000,则服务器上应存在 ASPNET 帐户。该帐户是由 Microsoft .NET Framework 安装程序创建的。如果 ASPNET 帐户不存在,可以运行下面的命令创建该帐户:
%windir%\Microsoft.NET\Framework\vn.n.nnnn**\ASPNET_REGIIS.exe –i** - 已添加应用程序 IIS,但尚未为订阅管理界面配置安全性。
- 已部署了 Notification Services 实例,即在数据库服务器上创建了实例和应用程序数据库。
数据库服务器任务
在数据库服务器上执行下列步骤。
步骤 1:安装 Notification Services 客户端组件
在数据库服务器上安装 Notification Services 客户端组件。如果已在该服务器上安装了 Notification Services,则无需安装客户端组件。
有关安装组件的详细信息,请参阅安装 SQL Server Notification Services。
步骤 2:注册 Notification Services 实例
在**“开始”菜单上,依次指向“所有程序”、“Microsoft SQL Server 2005”和“Notification Services”,再单击“Notification Services 命令提示”**以打开 Notification Services 命令提示符窗口。
键入下面的命令来注册实例:
nscontrolregister-nameinstanceName-serverdatabaseServer
步骤 3:授予 SQL Server 和数据库权限
在命令提示符窗口中,键入下面的命令来创建 SQL Server 登录 ID:
sqlcmd -E -S databaseServer -Q "CREATE LOGIN [computer\ASPNET] FROM WINDOWS;"
键入下面的命令来授予对实例数据库的登录访问并将其添加到 NSSubscriberAdmin 数据库角色:
sqlcmd -E -SdatabaseServer-Q "USEinstanceDatabase;
** CREATE USER [computer\ASPNET];**
** EXEC sp_addrolemember N'NSSubscriberAdmin', N'computer\ASPNET';"**
键入下面的命令来授予对应用程序数据库的登录访问并将其添加到 NSSubscriberAdmin 数据库角色:
sqlcmd -E -SdatabaseServer-Q "USEapplicationDatabase;
** CREATE USER [computer\ASPNET];**
** EXEC sp_addrolemember N'NSSubscriberAdmin', N'computer\ASPNET';"**
现在,您应当可以使用订阅管理应用程序对 Notification Services 实例的订阅方和订阅进行管理了。
疑难解答
如果不能管理订阅方和订阅,请通过在 Notification Services 命令提示符下运行下面的命令来检查实例状态:
nscontrol status-name instanceName
验证是否已启用订阅方和订阅管理。有关详细信息,请参阅查看实例、应用程序和组件的状态。
此外,还要检查 Windows 应用程序日志中是否包含错误。有关详细信息,请参阅 对 Notification Services 进行故障排除。
请参阅
概念
部署 Notification Services 实例
部署非宿主事件提供程序