SQL Server数据库技术(119)
SQL Server数据库技术(119),SQL Server数据库技术(119)
19.1.1 SQL Mail 简介
在SQL Server Agent 一章我们已经讲过当用户创建的警报被执行时,警报就会通过电子邮件或寻呼通知操作员。由于警报总是基于事件(当某一事件发生时警报被执行,如数据库遭到破坏)或基于条件(当条件超过某一预定值,比如性能警报),所以在接收到电子邮件或寻呼消息时,管理员就会了解系统当前正在处理哪个事件或处于何种状态。在这里电子邮件或寻呼消息是借助于SQL Server Agent 自有的Mail 特征(我们把其称为 SQLAgentMail) 而传送到操作员那里的。SQLAgentMail 和SQL Mail 都是SQL Server 提供的实现邮件传送的两种不同服务。但是,两者的不同点在于SQL Mai 提供更为强大的 Mail 功能。
如果SQL Server 服务器或客户机与一台邮件服务器建立连接,那么在SQL Mail 的帮助下SQL Server 能够在任何具有与MAPI 保持兼容的邮件系统的服务器上接收或发送电子邮件。不仅如此,由于SQL Mail 提供了多个系统过程,从而使用户更加灵活地在自己的应用程序、存储过程或触发器使用这些存储过程,这完全突破了SQLAgentMail 基于事件和条件的消息传递的局限性。
在让SQL Mail 表现它的过人之处之前,必须首先正确配置SQL Mail, 否则一切将无从谈起。
19.1.2 配置SQL Mail
就单纯配置SQL Mail 来讲,这是一件很容易的事情,但在配置SQL Mail 以前的确有几件重要的事情需要去完成。
由于SQL Mail 可以与任何MAPI 兼容的邮件系统交互,所以选择MAPI 兼容软件并不是件困难的事,可以使用Microsoft Mail, 也可以使用Microsoft Exchange。 在这里我们建议使用Microsoft Exchange。
接着,为了使SQL Server 可以接收或发送邮件,必须为SQL Server 设置Microsoft Exchange 邮箱,该工作是由Microsoft Exchange 管理员通过Microsoft Exchange Administrator 来完成的,所以,作为SQL Server 系统管理员,应该与Microsoft Exchange Server 管理员建立很好的联系。
然后,要把SQL Server 设置成Mail 客户,所以必须在运行SQL Server 的客户机上安装并配置Outlook 客户软件。配置Outlook 客户软件是通过控制面板上的Mail 和Fax 来实现的。
最后还要测试Exchange 连接是否有效,如果失败,则需重新配置。
注意:由于SQL Mail运行在SQL Server服务登录账号下,所以必须保证NT登录账号与SQL Server服务登录账号相同,且是NT的系统管理员。
以上的准备工作完成后就可以配置 SQL Mail 请按以下步骤执行:
(1) 启动SQL Server Enterprise Manager,登录到指定的服务器,打开Support Service 文件夹。
(2) 右击SQL Mail 图标,打开SQL Mail Configuration 对话框,如图 19-1 所示。
在Profile 旁的下拉列表中选择所创建的Mail 配置文件,单击Test 按钮进行测试。如果配置成功,则弹出配置成功消息框。
19.1.3 使用SQL Mail
SQL Mail 中包括许多存储过程,通过这些存储过程SQL Server 能够接收、发送邮件并对邮件进行处理;也可用这些存储过程来执行查询并向接收者返回查询结果,或对包含查询或存储过程的电子邮件做出应答。这些与SQL Mail 有关的存储过程及其含义见表 19-1。