SQL Server代理允许在发生异常情况时自动通知数据库管理员。这种强大的警报机制可以24小时监控数据库性能,而无需为24小时运营中心配备人员。
定义警报的一般要求
要定义警报,您需要某些基本信息,包括:
- 提醒名称 - 警报名称在SQL Server中必须是唯一的。它们不能超过128个字符。
- 事件 触发警报 - 事件类型确定使用的参数。三种类型的警报是SQL Server事件,SQL Server性能条件和Windows Management Instrumentation事件。
- 那个行动 SQL Server代理在触发事件时采用的方式。可以为这两种警报类型中的任何一种(或两种)分配任何警报:执行SQL Server代理作业和/或通知操作员。
逐步SQL Server警报设置
这些说明适用于SQL Server 2005及更高版本。
- 打开 SQL Server Management Studio 并连接到要在其中创建警报的数据库服务器。
- 单击“一次”展开SQL Server代理文件夹+“文件夹左侧的图标。
- 右键单击 警报 文件夹并选择 新警报 从弹出菜单中。
- 在中输入警报的描述性名称 名称 文本框。
- 从下拉菜单中选择警报类型。您的选择是SQL Server性能条件,如CPU负载和可用磁盘空间,SQL Server事件(如致命错误,语法错误和硬件问题)以及Windows Management Instrumentation(WMI)事件。
- 提供SQL Server请求的任何特定于警报的详细信息,例如事件报告中包含的特定文本和性能状况警报的参数。
- 点击 响应 中的图标 新警报 视窗 选择一个页面 窗格。
- 如果要在发生警报时执行SQL Server代理作业,请单击 执行工作 复选框,然后从下拉菜单中选择一个作业。
- 如果要在发生警报时通知数据库操作员,请单击 通知运营商 复选框,然后从网格中选择运算符和通知类型。
- 点击 好 创建警报。
使用Transact-SQL添加警报
从SQL Server 2008开始,您还可以使用Transact-SQL添加警报。使用Microsoft的以下语法:
sp_add_alert @name =
,@ message_id = message_id
,@ sever =严重性
,@ enabled =已启用
,@ delay_between_responses = delay_between_responses
,@notification_message ='notification_message'
,@ include_event_description_in = include_event_description_in
,@ database_name ='database'
,@ event_description_keyword ='event_description_keyword_pattern'
,@ job_name ='job_name'
,@ raise_snmp_trap = raise_snmp_trap
,@ performance_condition ='performance_condition'
,@ category_name ='category'
,@ wmi_namespace ='wmi_namespace'
,@ wmi_query ='wmi_query'