欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

配置SQL Server 2012数据库邮件

程序员文章站 2022-05-16 22:36:17
...

借助SQL Server自带的发送邮件的功能,可以为我们一些日常的工作带来一定的便利性。比如,收集SQL Server代理作业的失败记录,当数据库发生死锁时即时通知相关DBA等,都可以使用数据库邮件来实现mail通知的需求。下面将介绍SQL Server数据库邮件的配置、测试

借助SQL Server自带的发送邮件的功能,可以为我们一些日常的工作带来一定的便利性。比如,收集SQL Server代理作业的失败记录,当数据库发生死锁时即时通知相关DBA等,都可以使用数据库邮件来实现mail通知的需求。下面将介绍SQL Server数据库邮件的配置、测试等。

配置数据库邮件
首先按照下面的步骤配置文件和指定账户

  1. 如下图展开对象资源管理器,右击数据库邮件,然后点击配置数据库邮件
    配置SQL Server 2012数据库邮件
  2. 弹出下图后,点击“下一步”
    配置SQL Server 2012数据库邮件
  3. 按照默认的,点击“下一步”
    配置SQL Server 2012数据库邮件
  4. 指定配置文件名和说明,然后点击“添加”。
    配置SQL Server 2012数据库邮件
  5. 输入帐户名、电子邮件地址、服务器名称等,然后点击“确定”
    配置SQL Server 2012数据库邮件
  6. 下一步
    配置SQL Server 2012数据库邮件
  7. 下一步
    配置SQL Server 2012数据库邮件
  8. 下一步
    配置SQL Server 2012数据库邮件
  9. 完成
    配置SQL Server 2012数据库邮件
  10. 关闭
    配置SQL Server 2012数据库邮件

接下来配置邮件

在配置文件和账户完成后,需要配置邮件,具体如下:

sp_CONFIGURE 'show advanced', 1
GO
RECONFIGURE
GO
sp_CONFIGURE 'Database Mail XPs', 1
GO
RECONFIGURE
GO

配置SQL Server 2012数据库邮件

测试邮件

如下图,右击“数据库邮件”,然后点击“发送测试电子邮件”
配置SQL Server 2012数据库邮件
如下图,输入收件人,然后点击“发送测试电子邮件”

配置SQL Server 2012数据库邮件
如果顺利的话,应该可以收到测试的邮件(如下图),否则就要检查前面的配置信息是否都有效。

配置SQL Server 2012数据库邮件

执行存储过程sp_send_dbmail进行测试:

USE msdb
GO
EXEC sp_send_dbmail 
@profile_name = 'Local DBA',
@recipients='Burgess.Liu@quantacn.com',
@subject='Test',
@body='Test by Burgess'

配置SQL Server 2012数据库邮件

邮件日志相关
邮件副本:Database Mail将保留发出的电子邮件的副本,我们可以通过sysmail_allitems, sysmail_sentitems, sysmail_unsentitems, sysmail_faileditems来查询。
邮件的发送状态:保存在sysmail_mailitems表中,成功发送时,该表中sent_status栏目将显示为1;发送失败时,sent_status栏目将显示为2,未发送时为3。

日志文件:可以在sysmail_log 表中查看

更多的数据库邮件信息可参考这里,相关存储过程可参考这里 。