4

SQL Server 2008Gmail アカウントにメールを送信するためにデータベース メールを設定しています。DBMail以下は、私が作成したプロファイルの詳細です。

email id : xyz@gmail.com
Display Name : xyz
Reply email :
Server name : smtp.gmail.com
port no: 587
Check : This server requires a secure connection
Check : Basic Authentication
username : xyz@gmail.com ( should have gmail.com)
password : <mypassword>
confirm password : <mypassword>

次に、[次へ] をクリックして、デフォルトのパブリック プロファイルにしました。

次に、次のTSQLコードを使用して構成および送信しますDBMail

EXEC sp_CONFIGURE 'show advanced', 1
GO
RECONFIGURE
GO
EXEC sp_CONFIGURE 'Database Mail XPs', 1
GO
RECONFIGURE
GO

use msdb
go
EXEC sp_send_dbmail 
@profile_name='XYZ',
@recipients='XYZr@gmail.com',
@subject='Test message',
@body='Message Sent Successfully'

The output appears "Message Queued"

それでも私のメッセージは失敗しています。サーバーを正しくセットアップしたと感じています。任意の入力をいただければ幸いです。

 SELECT * FROM sysmail_log

本文の列が示しています

"メール サーバーの障害のため、メールを受信者に送信できませんでした。 (アカウント 1 を使用してメールを送信しています (2012-05-16T17:05:00)。例外メッセージ: メール サーバーに接続できませんでした。(そのようなホストはありません)知られている)」

4

3 に答える 3

5

推奨されるトラブルシューティング手順:

  1. SQL Server と同じマシンを使用し、Outlook などのクライアント メール プログラムを使用して、同じ SMTP サーバー経由でメッセージを送信してみてください。より意味のあるエラー メッセージが表示される場合があります。

  2. ポートがブロックされている可能性があります。ポート 587 を使用して、他の SMTP サーバーにメールを送信してみてください。

  3. ポート 465 に変更してみてください。

  4. プロファイルの「セキュリティで保護された接続が必要」ビットのチェックを外してみてください。

  5. ネットワーク内の SMTP サーバーを使用して、GMail に中継してみてください。これは、セットアップして実行するのが簡単かもしれません。リレーを処理するローカル SMTP サーバーがない場合は、IIS と SMTP コンポーネントをインストールする必要があります。

  6. http://mail.google.com/support/bin/answer.py?hl=ja&answer=13287を確認してください

于 2012-05-16T21:36:19.407 に答える
3

GMAIL を使用している場合は、次の手順を 1 つ追加してください。

安全性の低いアプリをオンにして、アカウントを使用します。これにより、データベース メールが gmail SMTP アカウントにアクセスできるようになります。

次のコードを使用してテスト メールを送信してみてください。

    USE msdb
    GO
    EXEC sp_send_dbmail @profile_name='XXX', -- Your profile name
    @recipients='abc@yahoo.com', -- Recipient's email address
    @subject='Test message',
    @body='This is the body of the test message.'

最後に、次のクエリを実行して、送信されたかどうかを確認してください

    SELECT * FROM sysmail_log
于 2016-04-03T03:06:53.527 に答える