2015-01-16 1 views
1

색인을 다시 작성/재구성하는 SP를 만들었습니다.sp_send_dbmail 계속 전자 메일 보내기

오류가 발생하면 sp_send_dbmail에서 오류를 알립니다. 전화 번호는 다음과 같습니다.

EXEC MSDB.DBO.sp_send_dbmail 
    @[email protected]_name, 
    @recipients = '[email protected]', 
    @[email protected], 
    @body_format='TEXT', 
    @[email protected]; 

지난 주 제대로 된 지난 주에 이메일로 오류를 받았습니다. 그러나 어젯밤에 오류가 발생했을 때 이메일을 보냈고 지금도 동일한 이메일을 계속 보내고 있습니다. 작업 활동 모니터에서 작업이 완료됩니다. 내 SP를 실행중인 항목이 있는지 찾기 위해 sp_who2를 실행했지만 아무 것도 표시되지 않습니다. 서버를 다시 시작하고 동일한 전자 메일을 계속 보냅니다.

아무도 도와 줄 수 있습니까?

EDIT1

: 은 내가 보낸
select count(*), sent_status 
from msdb.dbo.sysmail_mailitems 
where send_request_date > '20150116' 
GROUP BY sent_status 

발견 보내지 200000 재 시도 이메일의 1 MILLON이 있고, 300,000을 실행했습니다. 따라서 실행하십시오

EXECUTE msdb.dbo.sysmail_delete_mailitems_sp @sent_before = Null, 
@sent_status = 'unsent'; 

이 문제를 해결하기 바랍니다. 하지만 이메일은 계속 보낼 준비가되었습니다. firts 쿼리를 다시 실행하고 이제는 하나의 이메일을 보내지 않았습니다.

SELECT TOP 100 * FROM msdb.dbo.sysmail_log ORDER BY log_date DESC 

는 메시지를 던져 실행하면 :

Error: 14667, Severity: 16, State: 1. (Params:). The error is printed in 
terse mode because there was error during formatting. Tracing, ETW, 
notifications etc are skipped. 

또한

mailitem_id on conversation 39EBD9CC-3C9D-E411-8ACD-782BCB32DC87 was not 
found in the sysmail_send_retries table. This mail item will not be sent. 
+0

오류가 데이터베이스 또는 메일 서비스에 있는지 확인하려면 다음 sql 메일 테이블을 확인하십시오. SELECT TOP 100 * FROM msdb.dbo.sysmail_log ORDER BY log_date DESC' 및 SELECT TOP 100 * FROM msdb. dbo.sysmail_mailitems ORDER BY sent_date DESC' –

답변

1

글쎄, 그것은 해결 될 것으로 보인다있어, 후, sysmail_delete_mailitems_sp와 함께 몇 가지 이메일을 삭제 받은 편지함에 도착한 이메일은 이제 중지되었습니다.