MSSQL数据库邮件系列二(SSMS和TSQL)

一、前言

在配置数据库邮件之前,先和大家说说数据库邮件体系,首先我们知道的,msdb系统数据库保存有关Job,Database Mail,Nodifyication等等之类信息的.

MSSQL2005的邮件功能,使用了Services Broker进行了队列处理.然后使用外部进程,这个可以在配置成功Mail以后查看任务管理器中的进程.

另外的, sp_send_dbmail是手动发送邮件的存储过程,我们必须显示的赋值才能发送,等配置完以后和大家说说这个存储过程.

二、配置.

首先,因为邮件是基于services broker发送的,我们必须确保msdb数据库打开了service broker 功能.

Code

 

下面开始配置:

#1:打开SSMS的对象资源管理器->在管理文件中->打开数据库邮件->右键->选择配置数据库邮件

#2:我们会得到这样一个对话框:


我们先选择第一个Radio,重新配置

#3: 

配置文件名填写 配置文件的名称

然后我们新添加一个SMTP帐号,而且在对话框中有说明,一个配置文件可以与多个SMTP帐号关联,说明可以故障转移,当我们的一个SMTP服务器宕机异常的时候,自动的转移到下一个SMTP账户.

#4: 

我这里的话已经新建了一个数据库邮件帐号,所以你需要单击新建帐号打开对话框

#5: 

帐户名的话就是在上幅图中的帐户名的名称显示.然后看到SMTP这块,电子邮件地址也就是接受发送邮件的地址.而答复电子邮件可以设置相同的电子邮件,服务器名称制定自己的主机IP或者主机名

看到SMTP身份验证

之前我们在POP3中设置的就是基本身份验证(这种是明文形式的密码,不太安全,以后可以使用CA,CA的文章已经在写了,到时候发上去吧呵呵)

密码帐号自己填写.

成功以后,就选择一个配置文件账户.

#6:我们可以建立多个帐号方便故障转移

#7: 

在公共配置文件中,博友可以按照自己的爱好配置了,配置是否默认配置文件==

记得一定要有msdb中的角色:

SELECT

rl.name AS [Name]

FROM

sys.database_principals AS rl

INNER JOIN sys.database_principals AS ou ON ou.principal_id = rl.owning_principal_id

WHERE (rl.type = 'R')

查询中的DatabaseMailUserRole角色.

公共配置文件对 msdb 数据库中的 DatabaseMailUserRole 数据库角色的所有成员都可用。它们允许 DatabaseMailUserRole 角色的所有成员使用该配置文件发送电子邮件。专用配置文件为 msdb 数据库中的安全主体而定义。它们仅允许指定的数据库用户、角色和 sysadmin 固定服务器角色的成员来使用该配置文件发送电子邮件。

#8: 

可以配置具体的参数,比如文件扩展名啊,重试次数啊,日志记录级别等

#9:一直下一步,确定.如果成功了恭喜你,你认真查看了本文章

#10:继续回到对象资源管理器->数据库邮件->右键发送测试文件


我们通过自己建立账户1@mssql.com2@msql.com发送邮件.

 

--我们通过下面的方式来查看相关的信息

Code

 

 

其他的一些存储过看看:

ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.zh-CHS/udb9/html/5aa2886e-1db1-4066-85df-57ccf4538c54.htm

最后就是使用sp_send_dbmail来发送邮件可以查阅MSDN:

ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.zh-CHS/tsqlref9/html/f1d7a795-a3fd-4043-ac4b-c781e76dab47.htm

三、结束语

通过两篇文章博友应该基本了解了数据库邮件的配置,至于如何使用,就看大家了哈.

posted @ 2009-09-28 23:45  Sai~  阅读(3208)  评论(2编辑  收藏  举报