2004 г.
Электронная почта в MS SQL Server 2000
Виталий Чужа, Microsoft Certified Professional, Издательский Дом "КОМИЗДАТ"
Для успешного выполнения задач, связанных с администрированием MS SQL Server 2000, можно использовать электронную почту, но для этого потребуются службы SQL
Server Agent и MSSQLServer. О том, каким же образом настроить и применить в работе эти службы, и пойдет речь в данной статье
Consulenti caput numquam dolet.
У рассудительного голова никогда не болит
Варианты использования
MS SQL Server (далее - SQL Server) может принимать и отправлять сообщения по электронной почте, используя соединение с сервером почтовых сообщений. При этом SQL Server может использовать как службу SQL Server Agent, так и службу MSSQLServer (почтовый сеанс SQLMail).
SQL Server Agent (а точнее, SQLAgentMail) чаще всего связан с выполнением административных функций. Например, этой службой можно воспользоваться для отсылки почтового сообщения оператору при возникновении предупреждения (alert'a). Установка уведомления оператора
производится в окне свойств предупреждения на вкладке Ответ (Response) (рис.1)
Кроме того, по электронной почте можно уведомлять оператора о результате выполнения
задания (job) - в случае успешного выполнения, в случае ошибки выполнения или в обоих
случаях (рис. 2).
SQL Mail, в свою очередь, фактически является набором хранимых процедур, которые используются службой MSSQLServer для обработки сообщений - как входящих, так и исходящих (табл. 1).
В частности, сообщение может содержать запрос, результат обработки которого может быть переслан отправителю. Использование хранимых процедур SQL Mail в хранимых процедурах и триггерах, написанных пользователем SQL Server, также позволяет формировать e-mail сообщения.
Необходимо отметить, что SQL Server Agent (SQLAgentMail) и MSSQLServer (SQL Mail) самостоятельно устанавливают соединение с почтовым сервером, хотя и тот и другой могут работать с серверами Microsoft Exchange, POP3 (Post Office Protocol 3) и Microsoft Windows NT Mail.
Кроме того, некоторые операторы пейджинговой связи предоставляют услуги по отправке сообщений на пейджер посредством электронной почты. Иными словами, если вы являетесь администратором SQL Server и хотите быть постоянно в курсе событий - электронная почта SQL Server это то, что вам нужно.
Настройка
Прежде всего, в домене необходимо создать учетную запись пользователя, под которой будут работать службы SQL Server Agent и MSSQLServer. Затем необходимо будет внести этого
пользователя в группу администраторов ПК, на котором работает SQL Server, и создать для
него локальный профиль. Для создания профиля достаточно зайти под именем этого пользователя
в операционную систему. Затем необходимо настроить службы SQL Server Agent и MSSQLServer.
Запустив оснастку Services, найдем в ней (воспользовавшись меню Start > Programs > Administrative Tools > Services) службы SQLSERVERAGENT и MSSQLSERVER. В свойствах этих служб установим вид запуска (Startup type) как автоматический (Automatic) на закладке General, а на закладке Вход (Logon) укажем использование учетной записи вновь созданного пользователя (в нашем случае - PPDMN\vfc - рис. 3).
Для успешной работы с электронной почтой в SQL Server, необходимо использование почтового
клиента и сервера, умеющих работать по протоколу MAPI. В нашем случае сервером будет MS
Exchange, а клиентом - MS Outlook, входящий в состав MS Office (не путать с Outlook Express).
На сервере MS Exchange необходимо создать почтовый ящик для учетной записи нового пользователя
(PPDMN\vfc), а на клиенте (то есть на ПК, где работает SQL Server) установить MS Outlook
и создать почтовый профиль этого пользователя. Для создания почтового профиля необходимо
зайти, используя новый логин, в ОС и открыть окно свойств MS Outlook, кликнув для этого
правой кнопкой мыши по иконке на рабочем столе. Появится окно, изображенное на рис. 4.
Кликнем на кнопке Добавить и увидим следующее окно (рис. 5), где выберем автоматическое
создание конфигурации для MS Exchange Server. Далее укажем NetBIOS имя (или IP-адрес)
сервера MS Exchange и имя почтового ящика (рис. 6).
Если все было сделано правильно, мастер установки MS Outlook успешно завершит создание профиля. Теперь, открыв окно свойств Outlook, увидим, что появилась новая конфигурация для работы с почтой (рис. 7).
С настройкой почтового профиля закончили - пора настроить почту для почтовых сеансов SQLAgentMail и SQLMail. Откроем окно свойств SQLMail и введем имя профиля - после нажатия на кнопку "Test" система должна отрапортовать об успешном старте и останове почтового сеанса MAPI (рис. 8).
Теперь очередь SQL Server Agent. Откроем окно его свойств и на вкладке Общие (General) введем то же имя профиля, если мы используем одну и ту же учетную запись для обеих служб.,После нажатия на кнопку "Test" происходит отправка тестового письма и появляется сообщение об успешном тестировании (рис. 9).
Выводы
MS SQL Server 2000 предоставляет богатые возможности по уведомлению лиц (администратора
и операторов СУБД), ответственных за состояние баз данных и всего сервера в целом, о проблемах
или событиях, происходящих с данными на сервере. Используя различные способы уведомлений
(по электронной почте, на пейджер или же сообщения по сети), можно постоянно держать руку "на
пульсе" этой несомненно популярной системы управления базами данных. И, несмотря на некоторую
сложность настройки электронной почты SQL Server, возможно, именно вовремя пришедшее сообщение
позволит вам оперативно отреагировать на возникшую проблему и предотвратить потерю ваших данных.