※ ChatGPTを利用し、要約された質問です(原文:JOB実行完了時のデータベースメール送信について)
JOB実行完了時のデータベースメール送信について
このQ&Aのポイント
SQL Server 2005でのJOB実行結果のデータベースメール送信についての問題が発生しています。
データベースメールのログにエラーが記録されており、送信に失敗しているようです。
エラーメッセージによると、受信者へのメール送信ができないというエラーが発生しており、メールサーバーの問題の可能性があります。
SQL Server 2005にてJOBの実行結果をデータベースメールの機能を使用して送信しようとしています。
一連の設定を完了し、「テスト電子メールの送信」では正常にメール送信できるのですが、JOBのプロパティの通知の設定にてJOBの完了時にメールを送付しようとしても送信できません。
データベースメールのログ表示を行うと以下のエラーが3件記録されています。
心当たりなどございましたらお教えいただけませんでしょうか。
---
メッセージ
ExternalMailQueue で受信した XML メッセージ形式が無効です。conversation_handle: 6759B2B4-5F8C-DE11-B334-00145EEDA298。 message_type_name: {//www.microsoft.com/databasemail/messages}SendMailStatus。メッセージ本文: <?xml version="1.0" encoding="utf-8"?>
<responses:SendMail xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.microsoft.com/databasemail/responses ResponseTypes.xsd" xmlns:responses="http://schemas.microsoft.com/databasemail/responses">
<Information>
<Failure Message="メール サーバー エラーにより、メールを受信者に送信できませんでした。 (アカウント 3 (2009-08-19T10:29:15) を使用してメールを送信しています。例外メッセージ: メール サーバーにメールを送信できません。 (指定された文字列は、電子メール アドレスに必要な形式ではありません。) )" />
</Information>
<MailItemId Id="58" />
<SentStatus Status="3" />
<SentAccountId Id="0" />
<SentDate Date="2009-08-19T10:29:15" />
<CallingProcess Id="5196" />
</responses:SendMail>
。
メッセージ
1) Exception Information
===================
Exception Type: System.Data.SqlClient.SqlException
Errors: System.Data.SqlClient.SqlErrorCollection
Class: 16
LineNumber: 1
Number: 6602
Procedure: sp_xml_preparedocument
Server: SV-SYSTEM01
State: 2
Source: .Net SqlClient Data Provider
ErrorCode: -2146232060
Message: エラーの説明は 'テキストの内容に無効な文字が見つかりました。' です。
行番号 4、XML テキスト " <Failure Message="" 付近で、XML 解析エラー 0xc00ce508 が発生しました。
Data: System.Collections.ListDictionaryInternal
TargetSite: Void OnError(System.Data.SqlClient.SqlException, Boolean)
HelpLink: NULL
メッセージ
Invalid XML message format received on the ExternalMailQueue. conversation_handle: 6459B2B4-5F8C-DE11-B334-00145EEDA298. message_type_name: {//www.microsoft.com/databasemail/messages}SendMailStatus. message body: <?xml version="1.0" encoding="utf-8"?>
<responses:SendMail xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.microsoft.com/databasemail/responses ResponseTypes.xsd" xmlns:responses="http://schemas.microsoft.com/databasemail/responses">
<Information>
<Failure Message="メール サーバー エラーにより、メールを受信者に送信できませんでした。 (アカウント 3 (2009-08-19T10:29:15) を使用してメールを送信しています。例外メッセージ: メール サーバーにメールを送信できません。 (指定された文字列は、電子メール アドレスに必要な形式ではありません。) )" />
</Information>
<MailItemId Id="58" />
<SentStatus Status="3" />
<SentAccountId Id="0" />
<SentDate Date="2009-08-19T10:29:15" />
<CallingProcess Id="5196" />
</responses:SendMail>
お礼
ご連絡ありがとうございます。 ご推測のとおり、現象が発生している環境のSQL ServerにはSP2およびSP1が未適用でした。 上記環境にはSP2の適用が困難なので、SP2適用済の別環境を構築し、取り急ぎ正常送信を確認しました。 現象発生環境へのSP適用については、適用可能な状況になれば改めて確認したいと思います。 (その際には結果投稿いたします。)