SqlServer 数据库邮件

SQLserver 自带的邮件发送功能,可以很方便将数据库中的信息发送给相关人员。如 可以结合监控事件将警告信息发给管理人员,可以结合作业定时发送报表给相关人员等。

数据库邮件配置很简单,以下以图文配置:

1. 管理——数据库邮件(右键)——配置数据库邮件

2. 打开数据库邮件配置向导,选择第一个“通过执行以下人物来安装数据库邮件

3. 首先“新建配置文件”,填写“配置文件名”,再点击 添加 SMTP账户

4. 创建邮件账户

帐户名:数据库中看到的邮件账户名称

说明:(可选项)

电子邮件地址:数据库中发送电子邮件的电子邮件地址。

显示名称:此帐户发送的电子邮件上显示的名称。 (可选项)

答复电子邮件:当收件人回复数据库中的邮件时,回复将发送到该账户中。 (可选项)

服务器名称:发送电子邮件所用的 SMTP 服务器的名称或 IP 地址。 通常此格式类似于 smtp.<your_company>.com。

端口号:此帐户的 SMTP 服务器的端口号。 大多数 SMTP 服务器使用端口 25。

此服务器要求安全连接(SSL):使用安全套接字层加密通信。

使用数据库引擎服务凭据的Windows 身份验证:使用为 SQL Server 数据库引擎服务配置的凭据生成指向 SMTP 服务器的连接(如局域网内部署有SMTP 服务器)。

基本身份验证:指定 SMTP 服务器要求的用户名和密码(使用外部的SMTP 服务器)。

用户名:登录 SMTP 服务器所用的用户名。

密码:登录 SMTP 服务器所用的密码。

确认密码:再次输入密码以进行确认。

匿名身份验证:在没有登录凭据的情况下,将邮件发送至 SMTP 服务器(如局域网内部署有SMTP 服务器)。

5. 选择“公共配置文件”

公共配置文件对 msdb 数据库中的DatabaseMailUserRole 数据库角色的所有成员都可用。它们允许 DatabaseMailUserRole 角色的所有成员使用该配置文件发送电子邮件。

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

6. “配置系统参数

7. 接下来一步步点击确定完成!~

8. 现在开始测试!~管理——数据里邮件(右键)——发送测试电子邮件

9. 填写“收件人”的电子邮件,点击 “发送测试电子邮件”

10. 测试邮件很快收到了,成功!~O(∩_∩)O~

现在以SQL脚本配置邮件:

--1.启用数据库邮件
exec sp_configure 'show advanced options',1
reconfigure with override
go
exec sp_configure 'database mail xps',1
reconfigure with override
go

--2.创建邮件帐户
exec  msdb.dbo.sysmail_add_account_sp
	@account_name = N'kk_139',				--帐户名
	@description = N'user kk',				--说明
	@email_address = N'*******[email protected]',--邮件地址
	@display_name = N'AD08',				--显示名称
	@replyto_address = N'*****[email protected]',	--答复电子邮件
	@mailserver_type = N'smtp',				--邮件协议
	@mailserver_name = N'smtp.139.com',		--邮件服务器名称
	@port =25,								--邮件服务器端口
	@enable_ssl =0,							--是否加密
	@use_default_credentials =0,			--身份验证模式
	@username = N'*******[email protected]',		--用户名
	@password = N'************',			--密码
	@account_id = null
go

--3.创建配置文件
exec msdb.dbo.sysmail_add_profile_sp
	@profile_name = N'DefaultProfile',	--新配置文件的名称
	@description = N'默认配置文件',		--新配置文件的说明(可选)
	@profile_id = null
go

--4.帐户与配置文件关联
exec msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = N'DefaultProfile',	--配置文件名称
    @account_name = N'kk_139',			--帐户名称
    @sequence_number = 1				--顺序
go

--5.发送邮件
exec msdb.dbo.sp_send_dbmail
	@profile_name = N'DefaultProfile',	--profile名称
	@recipients = N'*****[email protected]',	--收件人
	@subject = N'数据库邮件测试',		--邮件标题
	@body = N'AD08 上的测试电子邮件。'	--邮件内容
go

--删除配置文件
EXEC msdb.dbo.sysmail_delete_profile_sp @profile_name=N'DefaultProfile', @force_delete=True
--删除账户
EXEC msdb.dbo.sysmail_delete_account_sp @account_name=N'kk_139'

--相关查询
exec msdb.dbo.sysmail_help_profile_sp
exec msdb.dbo.sysmail_help_account_sp
exec msdb.dbo.sysmail_help_profileaccount_sp
exec msdb.dbo.sysmail_help_configure_sp

select * from msdb.dbo.sysmail_account
select * from msdb.dbo.sysmail_profile
select * from msdb.dbo.sysmail_profileaccount
select * from msdb.dbo.sysmail_configuration
select * from msdb.dbo.sysmail_allitems
select * from msdb.dbo.sysmail_event_log

参考:

数据库邮件

SQL Server 创建数据库邮件

配置SQL Server 2012数据库邮件

时间: 2024-10-07 06:54:33

SqlServer 数据库邮件的相关文章

sqlserver如何启动数据库邮件

1 可以在 msdb 数据库中停止数据库邮件.若要检查数据库邮件的状态,请执行下面的语句: 2 3 4 5 6 7 8 复制 9 10 11 EXECUTE dbo.sysmail_help_status_sp; 12 13 14 若要在邮件主机数据库中启动数据库邮件,请在 msdb 数据库中运行以下命令: 15 16 17 18 19 20 21 复制 22 23 24 EXECUTE dbo.sysmail_start_sp;

使用数据库邮件发送会议邀请

http://social.microsoft.com/Forums/it-IT/3ba417d6-6548-48ed-9e9f-1a6549edc569 大家好,在此提供一个示例展示如何使用数据库邮件发送会议邀请.创建CLR 存储过程,用来生成.ics文件:1. 在 Visual Studio中,创建一个Visual C# SQL CLR Database Project,请看: 2. 添加一个数据库引用,请看: 3. 创建一个CLR存储过程,命名为CLROutLook,请看: 4. 使用Sy

好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面)

转载:http://www.cnblogs.com/lyhabc/p/3322437.html 挺好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面) 这个工具主要就是自动备份数据库,一键还原数据库,发送备份数据库日志报告到邮箱,自动压缩备份好的数据库 定期执行数据库备份任务,取代SSMS的维护计划,上传数据库备份文件到FTP服务器.其他网络硬盘等 软件有免费和付费两种模式,不过本人觉得免费版本的功能已经足够了 支持SQLSERVER版本:SQLSERVER200

SQLServer数据库自增长标识列的更新修改操作

SQLServer数据库自增长标识列的更新修改操作方法在日常的sql server开发中,经常会用到Identity类型的标识列作为一个表结构的自增长编号.比如文章编号.记录序号等等.自增长的标识列的引用很大程度上方便了数据库程序的开发,但是有时这个固执的字段类型也会带来一些麻烦. 一.修改标识列字段的值:(在执行insert时,将ID手动的设置成想要的值)有时,为了实现某个功能,需要修改类型为Identity自增长类型的字段的值,但由于标识的类型所限,这种操作默认是不允许的.比如,目前数据库有

JavaWeb程序连接SQLserver数据库

声明:一直以来都以为javaweb程序连接数据库是一个很高大上很难的问题,结果今天学习了一下,不到两个小时就解决了,所以总结一篇博客. JavaWeb程序连接SQLserver数据库分为一下步骤: 1:在http://www.microsoft.com/en-us/download/details.aspx?id=21599下载sqljdbc.jar的压缩包 2:解压之后,将sqljdbc4.jar复制粘贴到你项目的WEB-INF的lib目录下 3:需要知道一些数据库方面的技术知识: 先举个例子

asp.net 连接sqlserver数据库

在asp.net中连接sqlserver数据库之前,首先得确保正常安装了sqlserver2008,同时有数据库. 在项目中添加一个类DB,用来专门负责执行对数据库的增删改查.在添加的过程中会弹出下面的一个提示 直接点是就可以了. 在这个类中,首先定义一个连接对象 private SqlConnection conn = null;然后定义下面三个函数 private void SetConnection()//初始化连接对象 { if (conn == null) { //获取配置文件中的数据

web应用下sqlserver数据库ip地址无法连接问题。

刚装了sqlserver数据库,但是在myeclipse进行数据的增删改查时出现了数据库ip地址无法连接的问题,经过查找发现了问题所在.具体解决办法是: 1.打开sqlserver的配置管理器 2.仔细观察,我发现MSSQLSERVER目录下的tcp/ip协议是被禁用状态,右击选择打开协议 3.接下来在SQL SERVERS服务下对SQL SERVERS(MSSQLSERVER)重新启动. 4.然后tcp/ip协议就启动了,并且我们能知道数据库的端口号.

开启SQLSERVER数据库缓存依赖优化网站性能

很多时候,我们服务器的性能瓶颈会是在查询数据库的时候,所以对数据库的缓存非常重要,那么有没有一种方法,可以实现SQL SERVER数据库的缓存,当数据表没有更新时,就从缓存中读取,当有更新的时候,才从数据表中读取呢,答案是肯定的,这样的话我们对一些常用的基础数据表就可以缓存起来,比如做新闻系统的新闻类别等,每次就不需要从数据库中读取了,加快网站的访问速度. 那么如何开启SQLSERVER数据库缓存依赖,方法如下: 第一步:修改Web.Config的<system.web>节的配置,代码如下,让

win7系统安装VS2013后,连不上远程sqlserver数据库解决办法

刚搬了地方,顺便把电脑重做了系统,把sql2012和vs2013装好,怎么弄也连不上远程的数据库了,用程序连IIS直接死掉,用ssms连也是直接失去响应,开始以为是网线端口被运营商封杀了,最后发现不是的,是程序的原因.解决办法和大家分享一下,供大家参考: 以管理员的身份运行“命令管理器”,输入:netsh winsock reset 然后重启一下电脑. 本人亲测,问题解决了.参考资料URL:http://social.msdn.microsoft.com/Forums/zh-CN/030f66b