当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 教你怎样正确配置MySQL数据库SQL Mail

MYSQL
经验分享:MySQL 中如何复位根用户密码
MYSQL基础知识 MYSQL数据库基础命令
连接 MySQL 数据库失败频繁的原因探秘
如何在MySQL中获得更好的全文搜索结果
滚开!别动我的数据库 MYSQL数据安全
MYSQL字符集:编程乱码问题的初步探索
一种不错的从SQL转Mysql数据库的方法
怎样在没管理权时修改MySQL的用户密码
把我的密码还给我 MySQL中的密码恢复
安全第一:使用MySQL要注意的23个事项
不许你无视我 解决MySQL忽略用户现象
轻轻松松解决MySQL中文件未找到的问题
如何解决Mysql无法创建文件/写入文件
爱写就写 Mysql避免表已满的错误出现
看的明明白白 表已满错误出现方式有数种
MySQL数据库中root权限丢失解决方法
MYSQL用户管理员ROOT弱密码攻击战
Win2K下配置asp+cgi+php+mysql
大家来优化 Sysctl、Apache、MySQL
PHP 和 MySQL 开发中要注意的8个技巧

MYSQL 中的 教你怎样正确配置MySQL数据库SQL Mail


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 68 ::
收藏到网摘: n/a

本文用个人经历来讲解SQL Mail的配置与使用。

用SQL Mail主要是要完成这样的功能:

>用户在网上注册后,系统将随机产生的密码发送到用户登记的Email。

>用户在论坛的帖子有回复时将内容发送到用户的Email。

因为上述过程都是在存储过程中完成的,所以避免了前台程序对参数的传输处理,也不需要再用第三方的组件完成,比较方便。

1、为了使用SQL Mail,首先你的服务器上得有SMTP服务,我没有安装win2000 server自带的SMTP,而是用imail6.04的SMTP,感觉比较稳定,功能也比较强。

2、安装一个邮件系统,我安装了outLook 2000,我发现在配置邮件profile时,如果不安装outLook而是用别的第三方程序,win2k中文server版在控制面板中就找不到“邮件”一项。

3、安装完outlook后再刷新控制面板,就会找到“邮件”一项,双击进行邮件的配置,为配置文件起一个名字(假设为myProfile),以便以后SQL Mail使用,在该配置文件中设置各项属性。

4、启动outlook(设置为用MyProfile作为默认的配置文件),测试进行收发邮件,确认outlook工作正常。

5、用当前的域帐户启动SQL Server,在企业管理器的支持服务中,点击SQL Mail的属性,可以看到在配置文件选择中,出现了刚才定义的myProfile配置文件(你也可以定义多个profile),选择这个配置文件进行测试,SQL将返回成功开始和结束一个MAPI会话的信息,如果出现错误或是没有找到邮件配置文件,那一定是你启动SQL server用的帐号有问题。

6、现在你就可以在查询分析器中用XP_sendmail这个扩展存储过程发送SQL Mail了,格式如下:

以下为引用的内容:
xp_sendmail {[@recipients =] 'recipients [;...n]'}
            [,][@message =] 'message']
            [,][@query =] 'query']
            [,][@attachments =] attachments]
            [,][@copy_recipients =] 'copy_recipients [;...n]'
            [,][@blind_copy_recipients =] 'blind_copy_recipients [;...n]'
            [,][@subject =] 'subject']
            [,[@type =] 'type']
            [,][@attach_results =] 'attach_value']
            [,][@no_output =] 'output_value']
            [,][@no_header =] 'header_value']
            [,][@width =] width]
            [,][@separator =] 'separator']
            [,][@echo_error =] 'echo_value']
            [,][@set_user =] 'user']
            [,][@dbuse =] 'database']

其中@recipients是必需的。

参数说明:

参数 说明

@recipients 收件人,中间用逗号分开。

@message 要发送的信息。

@query 确定执行并依附邮件的有效查询,除触发器中的插入表及删除表外,此查询能引用任何对象。

@attachments 附件。

@copy_recipients 抄送。

@blind_copy_recipients 密送。

@subject 标题。

@attach_results 指定查询结果做为附件发送。

@no_header 不发送查询结果的列名。

@set_user 查询联接的用户名,默认为Guset。

@dbuse 查询所用的数据库,默认为缺省数据库。

7、不过,如果是在web应用中使用SQL mail,还有一些问题要解决:首先,就是应用程序中连接数据库的帐号,我在网站程序中的数据库连接是使用UDL文件,帐号为DbGuest,这是一个普通帐户,所以还必须在master库的扩展存储过程找到XP_sendmail,并在其属性中增加DbGuest这个用户,并选择EXEC权限。

好了,现在设置完毕,运行网站程序,测试用户注册,几乎没有什么延迟。