定义对警报的响应

适用于:SQL ServerAzure SQL 托管实例

重要

Azure SQL 托管实例,目前大多数但并非所有 SQL Server 代理功能都受支持。 有关详细信息,请参阅 Azure SQL 托管实例 T-SQL 与 SQL Server 的差异

本主题介绍如何使用 SQL Server Management Studio 或 Transact-SQL 来定义 Microsoft SQL Server 在 SQL Server 中如何响应 SQL Server Agent 的警报。

开始之前

限制和约束

  • Microsoft SQL Server 的未来版本中,将从 SQL Server 代理中删除 Pager 和 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. 如果要在激活警报时通知操作员,请选中 通知操作员 复选框。 在 操作员列表中,选择以下一种或多种方法来通知操作员或操作员们:电子邮件寻呼机网络发送。 可以通过单击 新运算符创建新运算符。 可以通过单击 查看运算符来查看有关操作员的详细信息。 有关 New 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)