2012-10-18 19 views
5

Ich versuche, eine E-Mail von einem geplanten SQL-Agent-Auftrag mit sp_send_dbmail und der folgenden Fehlermeldung an:sp_send_dbmail Fehler in Microsoft SQL-Agent-Auftrag

Msg 22050, Ebene 16, Status 1, Zeile 0 Fehler Formatierung Abfrage, wahrscheinlich ungültige Parameter Msg 14661, Ebene 16, Status 1, Prozedur sp_send_dbmail, Zeile 504 Abfrageausführung fehlgeschlagen: Nachricht 15404, Ebene 16, Status 19, Server MyServer, Leitung 1 Konnte Informationen über Windows NT-Gruppe/Benutzer nicht abrufen 'MyDomain \ sqlagent', Fehlercode 0x5. Hier

ist der Code aus dem Auftragsschritt:

DECLARE @SQL NVARCHAR(400) 
SELECT @SQL = 'SELECT COUNT(staff_id) FROM Staff' 

EXEC msdb.dbo.sp_send_dbmail 
@recipients = '[email protected]', 
@subject = 'Email Alert', 
@body = 'Test', 
@query = @SQL, 
@execute_query_database = 'MyDB' 

SQL-Agent unter einem Domänenkonto [MyDomain \ sqlagent] ausgeführt wird. Ich habe diesem Benutzer db_owner die Berechtigung in der MyDB-Datenbank gewährt, zusätzlich zum Hinzufügen als Mitglied der DatabaseMailUserRole in msdb. Immer noch kein Glück. Wenn ich die Parameter @query und @execute_query_database lösche, wird eine Test-E-Mail gesendet. Ich muss jedoch die Ergebnisse der Abfrage anhängen.

Jede Hilfe wird geschätzt, danke.

Antwort

3

Ich habe in der Vergangenheit einige seltsame Fehler mit AD gerannt. Ich würde empfehlen zu überprüfen, dass das Konto, unter dem Sie das ausführen, seine Attribute hat, die in AD lesbar sind. Der schnellste Weg, dies zu tun wäre

und sehen, ob Sie den gleichen Fehler bekommen. Wenn Sie dies tun, überprüfen Sie die Sicherheitseigenschaften des Domänenkontos [klicken Sie mit der rechten Maustaste auf den Benutzer in Active Directory> Eigenschaften> Registerkarte Sicherheit] und legen Sie Leseberechtigungen für authentifizierte Benutzer fest.

+0

Nic, danke für die Information. Ich habe die von Ihnen empfohlene Anfrage ausgeführt und die gleiche Nachricht erhalten, die ich erhalten habe. Ich habe deinen Rat befolgt, um die AD-Berechtigungen zu setzen [die es nicht hatte] und alles hat danach wie ein Zauber funktioniert. Der SQL Agent-Job wird ausgeführt und die E-Mail wird erfolgreich gesendet. – Brad

+0

Froh, dass das für dich geklappt hat. Ich bin in letzter Zeit einige Male auf dieses Problem gestoßen. – Nic

+0

Dies löste auch das Problem für mich, wo andere Antworten nicht (auch in anderen SO-Fragen, die ähnlich waren). –

Verwandte Themen