Компонент Database Mail
Компонент Database Mail — это решение уровня предприятия для отправки сообщений электронной почты от компонента SQL Server Database Engine. Используя компонент Database Mail, приложения базы данных могут отправлять почтовые сообщения пользователям. Сообщения могут содержать результаты запроса, а также могут включать файлы из любого сетевого ресурса. Компонент Database Mail спроектирован для надежности, масштабируемости, безопасности и простой поддержки.
Примечание по безопасности |
---|
По умолчанию компонент Database Mail не активен. Для использования компонента Database Mail его необходимо явно включить с помощью мастера настройки компонента Database Mail, хранимой процедуры sp_configure или аспекта «Настройка контактной зоны» средства управления на основе политики. |
Надежность
Не требуется ни почтовый клиент Microsoft Outlook, ни расширенный интерфейс прикладного программирования систем передачи сообщений (Extended MAPI). Для отправки почты компонент Database Mail использует простой протокол доставки сообщений (SMTP). Можно использовать компонент Database Mail, не устанавливая клиент Extended MAPI на компьютер, на котором работает SQL Server.
Изоляция процесса. Чтобы минимизировать воздействие на SQL Server, компонент, доставляющий электронную почту, выполняется вне SQL Server, в отдельном процессе. SQL Server продолжает ставить в очередь сообщения электронной почты, даже если внешний процесс остановится или в нем произойдет сбой. Поставленные в очередь сообщения будут отосланы, как только внешний процесс или SMTP-сервер перейдет в состояние «в сети».
Учетные записи отработки отказа. Профиль компонента Database Mail позволяет указать более одного SMTP-сервера. Если SMTP-сервер будет недоступен, почта может быть доставлена другому SMTP-серверу.
Поддержка кластера. Компонент Database Mail является ориентированным на кластеры и полностью поддерживается кластером.
Масштабируемость
Фоновая доставка. Компонент Database Mail предоставляет фоновую или асинхронную доставку. При вызове процедуры sp_send_dbmail для отправки сообщения компонент Database Mail добавляет запрос в очередь компонента Service Broker. Хранимая процедура возвращается немедленно. Внешний компонент электронной почты получает запрос и доставляет электронную почту.
Множество профилей. Компонент Database Mail позволяет создавать множество профилей в экземпляре SQL Server. Дополнительно можно выбрать профиль, который будет использовать компонент Database Mail при отправке сообщения.
Множество учетных записей. Каждый профиль может содержать множество учетных записей отработок отказов. Можно настроить различные профили с различными учетными записями для распределения электронной почты через несколько почтовых серверов.
64-разрядная совместимость. Компонент Database Mail полностью поддерживается на 64-разрядных установках SQL Server.
Безопасность
По умолчанию выключена. Для уменьшения контактной зоны SQL Server хранимые процедуры компонента Database Mail по умолчанию отключены.
Чтобы отправлять почту с помощью компонента Database Mail, необходимо быть членом роли DatabaseMailUserRole в базе данных msdb.
Безопасность профиля. Компонент Database Mail определяет безопасность для профилей почты. Выбираются пользователи или группы базы данных msdb, которые имеют доступ к профилю компонента Database Mail. Можно предоставить доступ или определенным пользователям, или всем пользователям в базе данных msdb. Закрытый профиль ограничивает доступ к указанному списку пользователей. Открытый профиль доступен для всех пользователей в базе данных.
Регулятор размера вложения. Компонент Database Mail определяет настраиваемое ограничение на размер файла вложения. Это ограничение можно изменить с помощью хранимой процедуры sysmail_configure_sp.
Запрещенные расширения файла. Компонент Database Mail поддерживает список запрещенных расширений файла. Пользователи не могут прикреплять файлы с расширением, указанным в списке. Этот список можно изменить с помощью хранимой процедуры sysmail_configure_sp.
Компонент Database Mail выполняется в учетной записи службы ядра базы данных SQL Server. Чтобы присоединить файл из папки к электронному письму, учетная запись ядра базы данных SQL Server должна иметь разрешения для доступа к папке с файлом.
Поддержка
Интегрированная конфигурация. Компонент Database Mail позволяет использовать сведения учетных записей электронной почты в компоненте SQL Server Database Engine. Нет необходимости управлять профилем почты во внешнем приложении-клиенте. Мастер настройки компонента Database Mail обеспечивает удобный интерфейс для настройки компонента Database Mail. Также можно создавать и поддерживать конфигурации компонента Database Mail с помощью языка Transact-SQL.
Ведение журнала. Компонент Database Mail регистрирует активность электронной почты в SQL Server, в журнале событий приложений Microsoft Windows и в таблице базы данных msdb.
Аудит. Компонент Database Mail сохраняет копии посланных сообщений и вложений в базе данных msdb. Можно легко проводить аудит использования компонента Database Mail и просматривать сохраненные сообщения.
Поддержка HTML. Компонент Database Mail позволяет посылать электронную почту в формате HTML.
Компонент Database Mail обеспечивает устойчивую, высокопроизводительную замену для наиболее востребованных возможностей службы SQL Mail. Компонент Database Mail создан для работы с SMTP-серверами и проверен на SMTP-серверах Майкрософт. Сведения о преобразовании хранимой процедуры из службы SQL Mail в компонент Database Mail см. в разделе Как преобразовать хранимые процедуры из службы SQL Mail в компонент Database Mail (Transact-SQL).
Примечание |
---|
Компонент Database Mail недоступен в среде SQL Server Express. |
В этом разделе