ssms能运行mysql的文件吗_MSSQL数据库邮件系列二(SSMS和TSQL)

一、前言

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

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

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

二、配置.

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

USEmsdb;--首先查看是否开启了数据库邮件EXECsysmail_help_status_sp--先启用数据库邮件

SELECT*FROMsys.configurationsEXECsp_configure'show advanced options',1RECONFIGUREWITHOVERRIDEEXECsp_configure'Database Mail XPs',1RECONFIGUREWITHOVERRIDE--查看是否启用Service BrokerSELECTis_broker_enabled 是否开启FROM sys.databasesWHERE[name]='msdb'--我们使用启用这个数据库Service BrokerALTERDATABASEmsdbSETENABLE_BROKER--我们使用可以单独为数据库邮件启用Service BrokerEXECUTEdbo.sysmail_start_sp ;GO--关闭Serice BrokerEXEC

下面开始配置:

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

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

d0d9757903237aed0f8ff1f89e1f70cf.png

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

#3:配置文件名填写 配置文件的名称

74a925a3d2e8e612087eb30e910e6086.png

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

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

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

#4:

adc4f8f1ed95b943b7af9d90c55e59fe.png

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

#5:

8c45539132c8d62ced3685f6f90eaa38.png

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

看到SMTP身份验证

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

密码帐号自己填写.

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

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

dfbd8ea23971839297999d81e2662d5c.png

#7:

6365abdad570f05788a444eb427b981a.png

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

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

SELECTrl.nameAS[Name]FROMsys.database_principalsASrlINNERJOINsys.database_principalsASouONou.principal_id=rl.owning_principal_idWHERE(rl.type='R')

查询中的DatabaseMailUserRole角色.

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

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

40eadd5434c92699b0de2e03343e4519.png

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

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

6c70cf699bb0ce8b8a022f6f39b465d0.png

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

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

USEmsdb;GO--查看发送的邮件SELECT*FROMsysmail_sentitems--查看我们失败的邮件SELECT*FROMsysmail_faileditems--查询所有的邮件SELECT*FROMsysmail_allitems--我们经常这种关联来查看失败的邮件的外部进程日志SELECT*FROMsysmail_faileditems AINNERJOINsysmail_event_log BONA.mailitem_id=B.mailitem_id--查看附件信息SELECT*FROMsysmail_mailattachments--查看所有的数据库邮件日志,里面包含了我之前的测试,现在我要进行一些删除SELECT*FROMsysmail_event_log--删除成功的数据库邮件日志EXECUTEmsdb.dbo.sysmail_delete_log_sp'success';GO--删除所有的日志EXECUTEmsdb.dbo.sysmail_delete_log_sp ;GO--删除特定日期的EXECUTEmsdb.dbo.sysmail_delete_log_sp@logged_before='2009-09-20';

其他的一些存储过看看:

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

三、结束语

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值