2008-08-12 3 views
4

Lorsque j'utilise la procédure stockée sp_send_dbmail, j'obtiens un message indiquant que mon courrier a été mis en file d'attente. Cependant, il semble ne jamais être livré. Je peux les voir dans la file d'attente si je lance ce SQL:Comment obtenir dbmail pour traiter des éléments de la file d'attente pour SQL Server 2005?

SELECT * FROM msdb..sysmail_allitems WHERE sent_status = 'unsent' 

Cette SQL retourne un 1:

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

Cette procédure retourne stockées Commencé

msdb.dbo.sysmail_help_status_sp 

Les comptes appropriés et des profils ont été mis en place et le courrier fonctionnait à un moment donné. Il n'y a pas d'erreurs dans msdb.dbo.sysmail_event_log.

Répondre

1

Peut-être des tas de choses. Par exemple, je l'ai vu (oui, effectivement vu) cette arriver après:

  • contrôleur de domaine reboot
  • reboot serveur Exchange
  • panne routeur
  • compte de service change
  • SQL Server court de l'espace disque

Alors jusqu'à ce que cela se reproduise, je ne paniquerais pas.

2

Avez-vous essayé

sysmail_stop_sp 

puis

sysmail_start_sp 
2

J'ai eu le même problème et c'est ainsi que j'ai pu le résoudre.

Passez à Agent Sql >> Propriétés >> Système d'alerte >> Cochez la case Activer pour DBMail et ajoutez un profil.

Redémarrez L'agent et cela fonctionne depuis.

Espérons que cela aide, _Ub

Questions connexes