Ruishine  
目录

一、配置数据库邮件

1.手动启用数据库邮件功能

需执行以下脚本:

exec sp_configure 'show advanced options',1
RECONFIGURE
exec sp_configure 'Database Mail XPs',1
RECONFIGURE With Override

如下图所示:

![在这里插入图片描述]( https://img-blog.csdnimg.cn/2021012815201971.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

2.配置数据库邮件

连接上数据库,Management →Database Mail → Configure Database Mail

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128152322805.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

弹出如下弹窗,点击 Next

![在这里插入图片描述]( https://img-blog.csdnimg.cn/2021012815254789.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

在选择配置任务中,如果是新增选择【Set up Database Mail for the first time , select the setup option】,如果是修改,可选择【Manage Database Mail account and profiles】。

本例选择【Set up Database Mail for the first time , select the setup option】,先择后点击 Next

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128153006432.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

配置SMTP账户(如果已有SMTP账户,可在下方列表中看到;如果没有,点击添加按钮添加即可。)

![在这里插入图片描述]( https://img-blog.csdnimg.cn/2021012815412890.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

新增数据库邮件账户
  a. 账户名:可根据实际情况新增
  b. 电子邮件地址:开通POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务的邮箱
  c. 显示名称:可根据实际情况新增
  d. 服务器名称:如果电子邮件地址是QQ邮箱,smtp.qq.com。
  e. 此服务器要求安全连接(SSL),打勾。
  f. 基本身份验证:用户名为电子邮箱地址;密码为授权码。

本例配置如下,配置完成后点击 OK

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128155321940.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

录入完成后,可看到 SMTP 账户列表

添加 Profile name(本例为 Monitor_Mail),完成后点击 Next

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128155804526.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

接下来需要选择安全公共配置,选中刚才配置的文件名,然后后面默认为配置文件,建议选【No】,可根据实际情况配置。

配置完成后点击 Next

![在这里插入图片描述]( https://img-blog.csdnimg.cn/2021012816022743.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128160258109.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

默认配置文件选【No】后,可根据实际情况修改系统参数。

本例使用默认配置,点击 Next

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128160450884.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

配置完成,点击 Finish

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128160630178.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

点击 Close,关闭窗口。

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128160749129.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

3.测试数据库邮件

在数据库界面测试,如下图:

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128161113546.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

在收件人处输入收件人邮箱即可(可添加多个邮箱,邮箱地址之间用分号隔开)

添加完成后,点击 Send Test E-Mail

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128161332490.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

出现如下弹窗,因为已成功收到数据库测试邮件,故点击 OK

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128161513386.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

收到邮件如下:

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128170520714.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

二、实现JOB任务运行状态的检测

使用SQL Server时,很多情况下都需要自定义Job进行部分功能的实现,而大部分时间是采取凌晨或者非业务期进行工作。

因而Job的运行结果的检测便形成了一个需要跟踪的问题,比如有时候N个Job的运行,只有几个出现问题,并且不确定的此Job发生在那个机器上,所以自动化运维的重要性就不言而喻了。

对于上面问题的解决,SQL Server提供了很简单的配置便可以实现。

1 . 定义操作员

SQL Server Agent → Operators → New Operator

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128162301338.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

说明:
  a. 姓名:操作员的姓名,可以是别名。
  b. 电子邮件名称:邮箱的地址。
  c. 寻呼值班计划:可根据实际情况设置时间

配置完成后点击 OK

![在这里插入图片描述]( https://img-blog.csdnimg.cn/202101281627514.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

展开操作员列表,可看到操作员已添加成功

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128162925272.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

2. 新建死锁警报

接下来,我们设置死锁(Dead Lock)告警, 如下所示,当然也可以使用UI界面设置。

补充说明:配置前先查询当前警报等级信息:

select * from msdb.dbo.syscategories

查询结果如下

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128163444825.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

select * from msdb.dbo.sysalerts

查询结果如下

在这里插入图片描述

配置语句如下:

USE [msdb]
GO
 
IF NOT EXISTS(SELECT 1 FROM msdb.dbo.syscategories WHERE name='DBA_MONITORING' AND category_class=2)
BEGIN
 
EXEC msdb.dbo.sp_add_category
    @class=N'ALERT',
    @type=N'NONE',
    @name=N'DBA_MONITORING' ;
 
END
GO
 
IF EXISTS(SELECT 1 FROM msdb.dbo.sysalerts WHERE name='SQL Server Dead Lock Detected')
BEGIN
    EXEC msdb.dbo.sp_delete_alert @name=N'SQL Server Dead Lock Detected';
END
GO
 
 
IF NOT EXISTS(SELECT 1 FROM msdb.dbo.sysalerts WHERE name='SQL Server Dead Lock Detected')
BEGIN
EXEC msdb.dbo.sp_add_alert @name=N'SQL Server Dead Lock Detected', 
        @message_id=1205, 
        @severity=0, 
        @enabled=1, 
        @delay_between_responses=0, 
        @include_event_description_in=1, 
        @category_name=N'DBA_MONITORING', 
        @job_id=N'00000000-0000-0000-0000-000000000000'
END
GO
 
IF NOT EXISTS ( SELECT  *
                FROM    msdb.dbo.sysnotifications
                WHERE   alert_id = ( SELECT id
                                     FROM   msdb.dbo.sysalerts
                                     WHERE  name = 'SQL Server Dead Lock Detected'
                                   ) )
    BEGIN
 
        EXEC msdb.dbo.sp_add_notification @alert_name = N'SQL Server Dead Lock Detected',
            @operator_name = N'Manager', @notification_method = 1;
    END;
GO

如下图

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128170741642.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

成功执行后,刷新 Alert 列表

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128170853258.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

刷新后,展开 Alert 列表可看到新建的告警

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128170927437.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

3. 设置SQL Server代理

SQL Server Agent → Properties

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128171804253.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

说明:
  a. 选择是否启用配置文件,邮件系统选择了数据库邮件,邮件配置文件可选择具体的配置。
  b. 启用防故障操作员

配置 Alert System 选项页,配置完成后点击 OK

![在这里插入图片描述]( https://img-blog.csdnimg.cn/2021012817243084.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

补充:其他选项页均保留默认设置,截图如下

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128172839473.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128172857299.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128172914389.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128172931203.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128172946383.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

三、创建 Profile 及映射

1.添加 Profile

exec msdb..sysmail_add_profile_sp
@profile_name = 'dba_profile'-- profile 名称
,@description  = 'dba mail profile'-- profile 描述
,@profile_id   = null

如图

在这里插入图片描述
2.映射 Account 和 Profile

exec msdb..sysmail_add_profileaccount_sp  
@profile_name    = 'dba_profile'-- profile 名称
,@account_name    = 'Monitor'-- account 名称
,@sequence_number = 1-- account 在profile中顺序

如图

在这里插入图片描述

四、配置 Job 发送 Database Log Space 邮件

1.新建Job

SQL Server Agent → Job → New Job

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128173534162.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

General 选项页配置如下

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128182836484.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

配置 Step 选项页,点击 New

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128182920872.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

New Job Step 配置如下图

其中代码段为:

EXEC sp_send_dbmail
    @profile_name = 'dba_profile',
    @recipients = 'zhangsan@qq.com', //实际配置时需将 zhangsan@qq.com 更换成实际邮箱地址
    @subject = 'Data Log Space',@query='dbcc sqlperf(logspace)'

![在这里插入图片描述]( https://img-blog.csdnimg.cn/2021012818390720.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

此时会返回到如下界面

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128184112124.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

配置 Scheduler 选项页,点击 New

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128184156945.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

根据实际需求配置完成后,点击 OK

本例配置的是 每天每 2h 发一次邮件

![在这里插入图片描述]( https://img-blog.csdnimg.cn/2021012818434947.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

点击 OK ,完成配置

![在这里插入图片描述]( https://img-blog.csdnimg.cn/202101281846032.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

展开 Job 列表,可看到新建的 Job

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128184831662.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

2.测试 Job

SQL Server Agent →Jobs → Database Log Space → Start Job at Step

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128185012554.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

执行成功,点击 OK 关闭窗口

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128185209554.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20210128185620265.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1J1aXNoaW5l,size_16,color_FFFFFF,t_70)

经测试 Job 成功发送想要的信息 。

posted on 2021-01-28 19:53  夜光兔  阅读(350)  评论(0)    收藏  举报