定义对警报的响应

适用于SQL Server Azure SQL 托管实例

重要

Azure SQL 托管实例目前支持大多数(但不是所有)SQL Server 代理功能。 有关详细信息,请参阅 Azure SQL 托管实例与 SQL Server 的 T-SQL 区别

本主题介绍如何使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 中定义 Microsoft SQL Server 对 SQL Server 代理警报的响应方式。

开始之前

限制和局限

  • 在 Microsoft SQL Server 的未来版本中,将从 SQL Server 代理中删除寻呼程序和 net send 选项。 请避免在新的开发工作中使用这些功能,并考虑修改当前使用这些功能的应用程序。

  • 请注意,若要向操作员发送电子邮件和寻呼通知,必须将 SQL Server 代理配置为使用数据库邮件。 有关详细信息,请参阅 向操作员分配警报

  • SQL Server Management Studio 为管理作业提供了一种图形化的简便方法,建议使用此方法来创建和管理作业基础结构。

安全性

权限

只有 sysadmin 固定服务器角色的成员才能定义对警报的响应。

使用 SQL Server Management Studio

定义对警报的响应

  1. “对象资源管理器”中,单击加号以便展开包含您要对其定义响应的警报的服务器。

  2. 单击加号以展开 “SQL Server 代理”

  3. 单击加号以展开 “警报” 文件夹。

  4. 右键单击要对其定义响应的警报,然后选择“属性”

  5. 在“alert_name 警报属性”对话框的“选择页”下,选择“响应”。

  6. 选中 “执行作业” 复选框,然后从 “执行作业” 复选框下的列表中选择出现警报时执行的作业。 您可以单击 “新建作业”来创建新的作业。 也可以单击 “查看作业”查看有关作业的详细信息。 有关“新建作业”和“作业属性 job_name”对话框中的可用选项的详细信息,请参阅作业查看作业

  7. 如果要在激活警报时通知操作员,请选中 “通知操作员” 复选框。 在“操作员”列表中,选择以下用于通知操作员的一个或多个方法:“电子邮件”、“寻呼程序”或“Net Send”。 您可以单击 “新建操作员”创建新的操作员。 也可以单击 “查看操作员”查看有关操作员的详细信息。 有关 “新建操作员”“查看操作员属性” 对话框中的可用选项的详细信息,请参阅 Create an OperatorView Information About an Operator

  8. 完成后,单击 “确定”

“使用 Transact-SQL”

定义对警报的响应

  1. “对象资源管理器” 中,连接到 数据库引擎的实例。

  2. 在标准菜单栏上,单击 “新建查询”

  3. 将以下示例复制并粘贴到查询窗口中,然后单击“执行” 。

    -- adds an e-mail notification for Test Alert.  
    -- assumes that Test Alert already exists and that
    -- François Ajenstat is a valid operator name   
    USE msdb ;  
    GO  
    
    EXEC dbo.sp_add_notification  
     @alert_name = N'Test Alert',  
     @operator_name = N'François Ajenstat',  
     @notification_method = 1 ;  
    GO  
    

有关详细信息,请参阅 sp_add_notification (TRANSACT-SQL)