Database Mail

Database Mail é uma solução empresarial para envio de mensagens de email do Mecanismo de banco de dados do SQL Server. Com o Database Mail, seus aplicativos de banco de dados podem enviar mensagens de email a usuários. As mensagens podem conter resultados de consulta e incluir, também, arquivos de qualquer recurso de sua rede. O Database Mail foi projetado de modo a garantir confiança, escalabilidade, segurança e suporte.

Observação sobre segurançaObservação sobre segurança

O Database Mail, por padrão, não se encontra ativo. Para usar o Database Mail, é necessário habilitar explicitamente o Database Mail usando o Assistente para Configuração do Database Mail, o procedimento armazenado sp_configure ou usando a faceta Configuração da Área da Superfície do Gerenciamento Baseado em Política.

Confiabilidade

  • Nenhum requisito de Microsoft Outlook ou de MAPI (Messaging Application Programming Interface) Estendida. O Database Mail usa o protocolo SMTP padrão para enviar emails. Você pode usar o Database Mail sem instalar um cliente de MAPI Estendida no computador que executa o SQL Server.

  • Isolamento do processo. Para minimizar o impacto sobre o SQL Server, o componente que entrega emails é executado fora do SQL Server, em um processo separado. O SQL Server continuará a enfileirar as mensagens de email mesmo que o processo externo seja interrompido ou falhe. As mensagens enfileiradas serão enviadas assim que o processo externo ou o servidor SMTP ficar online.

  • Contas de failover. Um perfil do Database Mail lhe permite especificar mais de um servidor SMTP. Caso um servidor SMTP fique indisponível, as mensagens poderão ser entregues por um outro servidor SMTP.

  • Suporte a cluster. O Database Mail reconhece cluster e conta com suporte total em um cluster.

Escalabilidade

  • Entrega em segundo plano. O Database Mail fornece entrega em segundo plano ou assíncrona. Quando sp_send_dbmail é chamado para enviar uma mensagem, o Database Mail adiciona uma solicitação a uma fila do Service Broker. O procedimento armazenado retorna imediatamente. O componente de email externo recebe a solicitação e entrega o email.

  • Vários perfis. O Database Mail lhe permite criar vários perfis dentro de uma instância do SQL Server. Opcionalmente, você pode escolher o perfil a ser utilizado pelo Database Mail para enviar uma mensagem.

  • Várias contas. Cada perfil pode conter várias contas de failover. Você pode configurar perfis diferentes com contas diferentes para distribuir email por vários servidores de email.

  • Compatibilidade de 64 bits. O Database Mail tem suporte total em instalações de 64 bits do SQL Server.

Segurança

  • Desativada, por padrão. Para reduzir a área da superfície do SQL Server, os procedimentos armazenados do Database Mail encontram-se desabilitados, por padrão.

  • Para enviar Database Mail, você deve ser membro da função de banco de dados DatabaseMailUserRole no banco de dados msdb.

  • Segurança de perfil. O Database Mail reforça a segurança dos perfis de email. Os usuários ou grupos do banco de dados msdb que têm acesso a um perfil do Database Mail são escolhidos por você. Você pode conceder acesso a usuários específicos ou a todos os usuários do msdb. Os perfis particulares restringem o acesso a uma lista especificada de usuários. Os perfis públicos estão disponível para todos os usuários de um banco de dados.

  • Administrador de tamanho de anexo. O Database Mail impõe um limite configurável ao tamanho do arquivo de anexo. É possível alterar esse limite usando o procedimento armazenado sysmail_configure_sp.

  • Extensões de arquivo proibidas. O Database Mail mantém uma lista de extensões de arquivo proibidas. Arquivos com extensões que figuram na lista não podem ser anexados pelos usuários. É possível alterar essa lista usando sysmail_configure_sp.

  • O Database Mail é executado na conta de serviço do mecanismo do SQL Server. Para anexar um arquivo de uma pasta para um email, a conta de mecanismo do SQL Server deve ter permissões para acessar a pasta com o arquivo.

Suporte

  • Configuração integrada. O Database Mail mantém as informações das contas de email no Mecanismo de banco de dados do SQL Server. Não há nenhuma necessidade de gerenciar um perfil de email em um aplicativo cliente externo. O Assistente para Configuração do Database Mail é uma interface conveniente para a configuração do Database Mail. Você também pode criar e manter configurações do Database Mail por meio de Transact-SQL.

  • Registro. O Database Mail registra a atividade de email no SQL Server, no log de eventos de aplicativos do Microsoft Windows e em tabelas do banco de dados msdb.

  • Auditoria. O Database Mail mantém cópias das mensagens e anexos enviados no banco de dados msdb. É fácil auditar o uso do Database Mail e examinar as mensagens retidas.

  • Suporte a HTML. O Database Mail lhe permite enviar email formatado como HTML.

O Database Mail fornece um substituto robusto e de alto desempenho para os recursos de SQL Mail solicitados mais frequentemente. O Database Mail foi projetado para operar com servidores SMTP e testado com servidores SMTP da Microsoft. Para obter informações sobre conversão de procedimentos armazenados de SQL Mail para Database Mail, consulte Como converter procedimentos armazenados do SQL Mail para Database Mail (Transact-SQL).

ObservaçãoObservação

O Database Mail não está disponível no SQL Server Express.