备份 Notification Services 数据库和操作文件

应当定期备份 SQL Server Notification Services 实例。如果不经常备份实例和应用程序数据,就无法将应用程序恢复至某个特定时间点。如果不备份其他数据、实例配置信息、应用程序定义、订阅管理界面、自定义组件以及应用程序所需的任何其他操作文件,则将无法完全恢复 Notification Services 实例。

备份和量程时钟

在 Notification Services 中,生成器并不连续运行,而是将运行时间分为不同的时间间隔。每个时间间隔(称为一个“量程”)**是由生成器创建和记录的。生成器在每个生成器量程结束时激活规则。

在恢复实例时,Notification Services 根据数据库确定最近完成的生成器量程,并从该时间点开始恢复处理。根据为应用程序定义的量程限制,生成器可能跳过量程。有关详细信息,请参阅指定量程限制

如果无法完全恢复事务日志,则应用程序可能会重新处理事件,并生成重复的通知。比如,如果将数据库恢复为 3 小时前的状态,则生成器会重新处理已存在 3 小时的量程,生成过去 3 小时中生成的通知的副本。因为生成器的量程时钟的原因,并且订阅方数据和订阅数据位于实例和应用程序数据库中,因此经常备份很重要,这样您才能还原当前数据,减少重复的通知。 

有关生成器量程时钟的详细信息,请参阅指定生成器量程持续时间

制定恢复计划

虽然以下列表可以帮助您制定恢复计划,但是,您应该制定自己的应用程序恢复列表和说明,因为每个应用程序和部署都是唯一的。

软件

请确保具有以下用于恢复的软件:

  • 操作系统媒体。
  • Microsoft SQL Server 媒体。
  • 所有适用于操作系统、SQL Server 或 Notification Services 的 Service Pack 或修补程序。
  • Notification Services 应用程序用到的任何操作文件,如自定义组件、XML 架构定义语言 (XSD) 文件和可扩展样式表语言转换 (XSLT) 文件。如果您创建一个全部文件及其运行时位置的列表,则将更加便于恢复 Notification Services 实例。
  • 包含实例配置信息和应用程序定义的文件。
  • 订阅管理界面。

安全信息

请确保恢复 Notification Services 实例的用户(如操作部门)能够访问以下安全信息:

  • 运行 Notification Services 引擎所用的用户名和密码。一般情况下,该引擎在 NS$intanceName Microsoft Windows 服务下运行。
  • 实例使用 SQL Server 身份验证访问实例和应用程序数据库时,实例的 SQL Server 用户名和密码。
  • 订阅管理界面使用的用户名和密码。
  • 用于安装软件和运行 nscontrol 命令的本地用户帐户或域用户帐户。
  • 通过使用 SQL Server Management Studio、nscontrol 命令或使用 Notification Services 管理对象 (NMO) 的自定义应用程序来管理 Notification Services 实例的 SQL Server 管理员帐户。
ms166456.note(zh-cn,SQL.90).gif重要提示:
请将这些信息存放在安全的位置。不执行部署、管理和恢复 Notification Services 实例操作的任何用户都不应有访问帐户和密码信息的权限。

备份数据库和其他文件

若要备份 Notification Services 实例,用户必须备份数据库文件、操作文件(如用于格式化通知的 XSLT 文件)和用于配置实例和应用程序的文件。

备份数据库文件

在 Microsoft SQL Server 2005 中,可将实例和应用程序数据置于现有的数据库中,也可以由 Notification Services 新建数据库。请在文档中查找 Notification Services 实例或者实例配置信息和应用程序定义,以确定哪些数据库包含实例和应用程序数据。

对于 Notification Services,最佳的恢复模式是完全恢复。利用完全恢复模式提供的数据库备份、差异备份和事务日志备份,用户可以将实例和应用程序数据库恢复到某个时间点。例如,可以将备份安排在每晚执行完整数据库备份,每 3 小时执行差异备份,每 30 分钟执行事务日志备份。利用此模式,您应能将实例恢复至故障发生前 30 分钟之内的状态。

有关备份数据库的详细信息,请参阅在 SQL Server 中备份和还原数据库

ms166456.note(zh-cn,SQL.90).gif重要提示:
按照相同的计划备份包含实例和应用程序数据的数据库。同时备份可以确保数据库处于相同的操作状态,降低恢复后应用程序出错的可能性。

备份操作文件

除了数据库文件,大多数的实例在运行中还需要一些其他文件。例如,使用文件系统观察程序事件提供程序的应用程序需要使用一个或多个 XML 架构定义语言 (XSD) 文件(XSD 文件来说明事件数据。所有使用 XSLT 格式化通知的应用程序都有一个或多个 XSLT 文件;另外,所有使用自定义对象的应用程序均有针对自定义对象的其他文件。

若要恢复实例,必须具备实例承载的所有应用程序的所有操作文件。如果某些操作文件不可用,那么在启动实例时,部分应用程序就会失败。

由于这些操作文件一般不像数据库文件那样经常变化,用户不必像备份数据库文件那样经常备份这些文件。但是,应当使用版本控制系统存储其源文件,或在更改了操作文件时立即进行备份。

备份配置文件和应用程序定义文件

在运行时,实例及其应用程序不需要包含实例配置应用程序定义数据的文件。但是,在更新实例和应用程序时需要使用这些文件。如果没有可用的实例备份,并且丢失了初始文件,则可从实例和应用程序数据库导出当前数据。

有关详细信息,请参阅导出 Notification Services 实例和应用程序元数据

请参阅

其他资源

备份和恢复 Notification Services
在 SQL Server 中备份和还原数据库
管理 Notification Services

帮助和信息

获取 SQL Server 2005 帮助