需求描述

在生产环境中,大部分情况下需要有自己的运维体制,包括自己健康状态的检测等。如果发生异常,需要提前预警的,可以以发邮件告知,邮件作为一种非常便利的预警实现方式,在及时性和易用性方面也有着不可替代的优点。

所以,在本篇中将详细的分析下在SQL Server中邮件通知功能及使用方式等。 整个事件的核心就是配置邮件服务,这部分需要一个邮件账户以及相应的邮件服务器。下面以QQ邮件为例进行说明。

一、邮件服务设置

  1、设置邮件服务器 

    邮箱设置-POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务

    

    开启POP3/SMTP服务,点击开始,然后点击下方的【生成授权码】,会提示发送短信,然后获得的授权码就是数据库发送邮件帐号的密码。

  2、配置数据库邮件

    2.1 连接上数据库,管理-数据库邮件-右键-配置数据库邮件

    

    

    2.2 在选择配置任务中,如果是新增选择【通过执行以下任务来安装数据库邮件】,如果是修改,可选择【管理数据库邮件账户和配置文件】

    

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

    

    2.4 新增数据库邮件账户

      a. 账户名:可根据实际情况新增

      b. 电子邮件地址:开通POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务的邮箱

      c. 显示名称:可根据实际情况新增

      d. 服务器名称:如果电子邮件地址是QQ邮箱,smtp.qq.com。

      e. 此服务器要求安全连接(SSL),打勾。

      f. 基本身份验证:用户名为电子邮箱地址;密码为授权码。

    

    2.5 录入完成后,可看到smtp账户列表。

    

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

    

    2.7 默认配置文件选“否”后,可根据实际情况修改系统参数。

    

  3、测试数据库邮件。

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

    

    在收件人处输入收件人邮箱即可。

    

    3.2 通过SQL脚本测试。 

    EXEC msdb.dbo.sp_send_dbmail
      @profile_name = 'Test',       --配置文件名称
      @recipients = '123@QQ.com',    --收件email地址
      @subject = '你好',         --邮件主题
      @body = '…'            --邮件正文内容

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

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

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

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

  1、定义操作员

  

  备注:

    a. 姓名:操作员的姓名,可以是别名。

    b. 电子邮件名称:邮箱的地址。

    c. 寻呼值班计划:可根据实际情况设置时间

  

  2、新建警报:定义警报属性等。

  备注:

    a. 名称:在JOB属性设置时会用到。

    b. 数据库名称

  这里面的严重性选项其实是一个很重要的功能,一些简单的问题警告有时候是不需要及时关注的,或者说不需要暂时处理的。但是有些问题则需要里面去解决,比如服务器宕等。

  

  备注

    a. 执行作业:如果有多个作业的话,需选择具体的作业;如新建,可点击新建作业按钮。

    b. 通知操作员:选择需通知的操作员,可多个。

  

  3、设置SQL Server代理,在属性中选择警报系统。

  

  备注:

    a. 选择是否启用配置文件,邮件系统选择了数据库邮件,邮件配置文件可选择具体的配置。

    b. 启用防故障操作员

  

  4、新建作业

  

  

  5、运行结果

  

  SQL Server数据功能还是很强大的,这里简单实现了发邮件的功能,当时还可以灵活运用。

SQL Server配置数据库邮件的更多相关文章

  1. SQL Server 创建数据库邮件

    一. 背景 数据库发邮件通知数据库的运行状态(状态可以通过JOB形式获取)和信息,达到预警的效果. 二. 基础知识 msdb系统数据库保存有关Job,Database Mail,Nodifyicati ...

  2. [转]SQL Server 创建数据库邮件

    本文转自:http://www.cnblogs.com/gaizai/p/3358958.html 一. 背景 数据库发邮件通知数据库的运行状态(状态可以通过JOB形式获取)和信息,达到预警的效果. ...

  3. SQL Server代理(4/12):配置数据库邮件

    SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 在以前的文章里我们看到,SQL Serve ...

  4. 第四篇 SQL Server代理配置数据库邮件

    本篇文章是SQL Server代理系列的第四篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.SQL Serve ...

  5. SQL Server 2008 /SQL Server 2008 R2 配置数据库邮件

    原文:SQL Server 2008 /SQL Server 2008 R2 配置数据库邮件 从2005开始,就引入了"数据库邮件"功能.并且取代SQLMail.原有SQLMail ...

  6. 在 SQL Server 2005 中配置数据库邮件

    一.            SQL Server发邮件原理和组件介绍: 数据库邮件有4个组件:配置文件.邮件处理组件.可执行文件以及“日志记录和审核组件”. l  配置组件包括: 1)数据库邮件帐户包 ...

  7. 【译】第四篇 SQL Server代理配置数据库邮件

    本篇文章是SQL Server代理系列的第四篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.SQL Serve ...

  8. SQL Server 2012 配置数据库邮件

    发送和接受邮箱不能用QQ邮箱,可以用163网易邮箱,同时要求要发送邮件的计算机能上外网 查看163网易邮箱的发送和接收服务器的方法如下 在数据库的管理中,右击数据库邮件,选择配置数据库邮件 出现对话框 ...

  9. SQL Server 2008 数据库镜像部署实例之三 配置见证服务器

    SQL Server 2008 数据库镜像部署实例之三 配置见证服务器 前面已经完成了镜像数据库的配置,并进行那个了故障转移测试.接下来将部署见证服务器,实现自动故障转移. 一.关于见证服务器 1.若 ...

随机推荐

  1. Architecture of a Java Compiler

    Architectural Overview   A modern optimizing compiler can be logically divided into four parts:   Th ...

  2. JavaScript -- Constructor、Prototype

    ----- 012-constructor.html ----- <!DOCTYPE html> <html> <head> <meta http-equiv ...

  3. 前端通信:ajax设计方案(四)--- 集成ajax上传技术 大文件/超大文件前端切割上传,后端进行重组

    马上要过年了,哎,回家的心情也特别的激烈.有钱没钱,回家过年,家永远是舔舐伤口最好的地方.新的一年继续加油努力. 上次做了前端的ajax的上传文件技术,支持单文件,多文件上传,并对文件的格式和大小进行 ...

  4. 在Windows家里杀死一个偷端口的家伙

    今天,写项目了,写了好多代码,然后运行成功,但是返回的信息啥的还有代码整体的逻辑有点问题,于是就review了代码,改了些东西,然后再次启动服务,但是,问题来了:Address already in ...

  5. URL编码分析与乱码解决方案

    一.问题的由来 URL就是网址,只要上网,就一定会用到. 一般来说,URL只能使用英文字母.阿拉伯数字和某些标点符号,不能使用其他文字和符号.比如,世界上有英文字母的网址"http://ww ...

  6. PTA (Advanced Level) 1027 Colors in Mars

    Colors in Mars People in Mars represent the colors in their computers in a similar way as the Earth ...

  7. ARM的体系结构与编程系列博客——ARM处理器系列介绍

    ARM处理器系列介绍 现在到了3月,过年过得过于舒服了.系列博客也停更了近半月,我果然是个慢(lan)性(gui)子,那么趁着到校的第一天晚上,就写一篇博客来继续我的系列博客了!众所周知,ARM处理器 ...

  8. 三种数据库访问——原生JDBC

    原生的JDBC编程主要分一下几个步骤: (原生的JDBC编程指,仅应用java.sql包下的接口和数据库驱动类编程,而不借助任何框架) 1. 加载JDBC驱动程序: 2. 负责管理JDBC驱动程序的类 ...

  9. JavaScript shift()函数移出数组第一个数据

    pop() 函数用来移出数组中最后一个元素.如果想要移出第一个元素要怎么办呢? .shift() 就是专门用来处理这类型需求的.它的工作原理类似 .pop(),但它移除的是第一个元素,而不是最后一个.

  10. maven配置Mac平台

    Mac OS X 安装Maven: 下载 Maven, 并解压到某个目录.例如/Users/robbie/apache-maven-3.3.3 打开Terminal,输入以下命令,设置Maven cl ...