AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 142080
Accepted
Dave
Dave
Asked: 2016-06-24 11:24:39 +0800 CST2016-06-24 11:24:39 +0800 CST 2016-06-24 11:24:39 +0800 CST

SQL Server 2016 DB Mail não está sendo enviado

  • 772

Estou no SQL Server 2016 e me divertindo muito... meu DB Mail não está enviando e estou ficando sem lugares para procurar. Verifiquei duas vezes as permissões da conta SQL para o executável do DBmail - ele leu e executou. Digitei uma regra para a porta de saída 587 do firewall. Tentei outra conta de e-mail e perfil com os mesmos problemas não enviados. As únicas entradas nos logs (logs de correio db) estão iniciando e terminando o serviço. Não há erros em qualquer lugar que eu possa encontrar. Os e-mails parecem simplesmente entrar na fila de envio e nunca mais sair dela. As contas podem enviar e receber emails por conta própria e de uma instância do SQL Server 2014 em outra máquina.

Eu tenho uma fila de itens com status de enviados "não enviados" e verifiquei todos os locais normais com resultados esperados em todos eles, além de uma longa fila de emails não enviados:

SELECT * FROM msdb..sysmail_event_log order by log_id DESC

SELECT * FROM dbo.sysmail_mailitems

SELECT * FROM dbo.sysmail_sentitems

USE msdb
SELECT sent_status, *
FROM sysmail_allitems

 SELECT is_broker_enabled FROM sys.databases WHERE name = 'msdb';

 EXECUTE msdb.dbo.sysmail_help_status_sp

Eu tentei desligá-lo e ligá-lo novamente... então eu perdi um DMV etc. que poderia esclarecer essa situação? Este é um problema conhecido com o SQL Server 2016 que não tenho em minhas pesquisas? Quaisquer outras etapas possíveis para enviar este e-mail?

sql-server database-mail
  • 5 5 respostas
  • 60285 Views

5 respostas

  • Voted
  1. Best Answer
    Dave
    2016-06-28T07:40:34+08:002016-06-28T07:40:34+08:00

    Por capricho, ao verificar as permissões, cliquei duas vezes no executável do email do banco de dados real. O resultado na máquina do SQL Server 2014 foi uma janela de comando vazia. No SQL Server 2016, clicar no executável do DB Mail apresentou esta mensagem:

    insira a descrição da imagem aqui

    Não consigo encontrar esse requisito em nenhum lugar na documentação do SQL Server 2016, mas é claramente um requisito. O DB Mail está funcionando perfeitamente sem outras alterações além da instalação do .NET 3.5.

    • 17
  2. jalsh
    2018-02-01T23:15:30+08:002018-02-01T23:15:30+08:00

    De acordo com o suporte da Microsoft, há um bug na instalação do SQL Server 2016 que faz com que o email do banco de dados não funcione sem o .net 3.5

    Há uma solução alternativa criando um arquivo DatabaseMail.exe.config na mesma pasta em que o DatabaseMail.exe existe (pasta Binn) escreva o seguinte no arquivo e salve com codificação utf-8

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <startup useLegacyV2RuntimeActivationPolicy="true"> 
    <supportedRuntime version="v4.0"/>     
    <supportedRuntime version="v2.0.50727"/>
    </startup>
    </configuration>
    

    Fonte: CORREÇÃO: SQL Server 2016 Database Mail não funciona em um computador que não tenha o .NET Framework 3.5 instalado

    • 10
  3. Yhagger
    2016-07-29T00:46:54+08:002016-07-29T00:46:54+08:00

    Dê uma olhada nisso em vez disso. Desta forma, você só precisa copiar um arquivo em vez de instalar o .net 3.5. Precisa instalar o CU1 primeiro. Confira aqui mais detalhes.

    • 4
  4. Alexei
    2018-12-25T04:38:05+08:002018-12-25T04:38:05+08:00

    Além das causas já mencionadas, também é importante ativar o perfil de e-mail no nível do SQL Server Agent conforme indicado aqui :

    • Clique com o botão direito do mouse em SQL Server Agent> selecione Propriedades
    • Selecione Sistema de Alerta no painel esquerdo

    • Marca de seleção > Ativar perfil de e-mail

    • Verificar sistema de correio: Database Mail
    • Verificar perfil de email: SQLAlerts
    • Marca de seleção > Incluir corpo do e-mail na mensagem de notificação
    • Clique OK.
    • Reinicie o agente.
    • 2
  5. George Barwood
    2020-07-01T22:12:31+08:002020-07-01T22:12:31+08:00

    Tente reiniciar o SQL Server

    Ontem, após meses de execução sem problemas, o SQL Mail parou de enviar mensagens sem motivo aparente, ou melhor, cada tentativa terminava em falha, assim como as tentativas. Eu assumi inicialmente que era um problema com o destino (era específico para um servidor de email específico) e perguntei se a senha havia sido alterada - responda não.

    Eventualmente, depois de usar o powershell para provar a mim mesmo que os detalhes e as credenciais da conexão estavam ok, reiniciei o servidor SQL e tudo começou a funcionar novamente.

    Quanto ao que causou isso: havia apenas um número moderadamente grande de e-mails enviados para o destino em um único lote - cerca de 400 e-mails, o que aparentemente causou o problema. Cerca de metade destes foram enviados antes de começar a falhar.

    Se reiniciar o SQL for problemático, você pode tentar sysmail_stop_sp / sysmail_start_sp ( por sugestão nos comentários ).

    • 1

relate perguntas

  • SQL Server - Como as páginas de dados são armazenadas ao usar um índice clusterizado

  • Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?

  • Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?

  • Quais são as principais causas de deadlocks e podem ser evitadas?

  • Como determinar se um Índice é necessário ou necessário

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve