次の方法で共有


データベース メールを構成する

このトピックでは、データベース メール構成ウィザードを使用してデータベース メールを有効にして構成し、テンプレートを使用してデータベース メール構成スクリプトを作成する方法について説明します。

開始する前に

Database Mail XPs オプションを使用して、サーバーのデータベース メールを有効にします。 詳細については、「 データベース メール XPs サーバー構成オプション のリファレンス トピック」を参照してください。

制限事項と制約条件

任意のデータベースで SQL Server Service Broker を有効にするには、データベース ロックが必要です。 Service Broker が msdb で非アクティブ化された場合、データベース メールを有効にするには、まず SQL Server エージェントを停止して、Service Broker が必要なロックを取得できるようにします。

安全

データベース メールを構成するには、 sysadmin 固定サーバー ロールのメンバーである必要があります。 データベース メールを送信するには、msdb データベースの DatabaseMailUserRole データベース ロールのメンバーである必要があります。

データベース メール構成ウィザードの使用

ウィザードを使用してデータベース メールを構成するには

  1. オブジェクト エクスプローラーで、データベース メールを構成するインスタンスのノードを展開します。

  2. [管理] ノードを展開します。

  3. [データベース メール] を右クリックし、[データベース メールの構成] をクリックします。

  4. ウィザードダイアログを完了する

[ようこそ] ページ

このページでは、データベース メールを構成する手順について説明します。

このページをもう一度表示しない - 今後このウェルカム ページが表示されないようにするには、このページを確認してください。

次へ - [ 構成タスクの選択 ] ページに進みます。

キャンセル - データベース メールを構成せずにウィザードを終了します

構成タスクの選択

[ 構成タスクの選択] ページを使用して、ウィザードを使用するたびに完了するタスクを指定します。 ウィザードを完了する前に気が変わったら、[ 戻る ] ボタンを使用してこのページに戻り、別のタスクを選択します。

データベース メールが有効になっていない場合は、「データベース メール機能は使用できません」というメッセージが表示されます。この機能を有効にしますか?[はい] の応答は、sp_configure システム ストアド プロシージャの [データベース メール XPs] オプションを使用してデータベース メールを有効にすることと同じです。

次のタスクを実行してデータベース メールを設定する
データベース メールを初めて設定するために必要なすべてのタスクを実行します。 このオプションには、他の 3 つのオプションがすべて含まれます。

データベース メール アカウントとプロファイルを管理する
新しいデータベース メール アカウントとプロファイルを作成するか、既存のデータベース メール アカウントとプロファイルを表示、変更、または削除します。

プロファイルのセキュリティを管理する
データベース メール プロファイルにアクセスできるユーザーを構成します。

システム パラメーターの表示または変更
添付ファイルの最大ファイル サイズなどのデータベース メール システム パラメーターを構成します。

新しいアカウントページ

このページを使用して、新しいデータベース メール アカウントを作成します。 データベース メール アカウントには、SMTP サーバーに電子メールを送信するための情報が含まれています。

データベース メール アカウントには、SQL Server が SMTP サーバーに電子メール メッセージを送信するために使用する情報が含まれています。 各アカウントには、1 つの電子メール サーバーの情報が含まれています。

データベース メール アカウントは、データベース メールにのみ使用されます。 データベース メール アカウントは、SQL Server アカウントまたは Microsoft Windows アカウントに対応していません。 データベース メールは、SQL Server データベース エンジンの資格情報、指定した他の資格情報、または匿名で送信できます。 基本認証を使用する場合、データベース メール アカウントのユーザー名とパスワードは、電子メール サーバーでの認証にのみ使用されます。 アカウントは、SQL Server ユーザーまたは SQL Server を実行しているコンピューター上のユーザーに対応している必要はありません。

アカウント名
新しいアカウントの名前を入力します。

説明
アカウントの説明を入力します。 説明は省略できます。

電子メール アドレス
アカウントの電子メール アドレスの名前を入力します。 これは、電子メールの送信先の電子メール アドレスです。 たとえば、SQL Server エージェントのアカウントは、アドレス SqlAgent@Adventure-Works.comから電子メールを送信できます。

表示名
このアカウントから送信された電子メール メッセージに表示する名前を入力します。 表示名は省略可能です。 これは、このアカウントから送信されたメッセージに表示される名前です。 たとえば、SQL Server エージェントのアカウントでは、電子メール メッセージに "SQL Server Agent Automated Mailer" という名前が表示される場合があります。

電子メールに返信する
このアカウントから送信された電子メール メッセージへの返信に使用する電子メール アドレスを入力します。 返信電子メールは省略可能です。 たとえば、SQL Server エージェントのアカウントへの応答は、データベース管理者 ( danw@Adventure-Works.com) に送信される場合があります。

サーバー名
アカウントが電子メールの送信に使用する SMTP サーバーの名前または IP アドレスを入力します。 通常、これはsmtp.<your_company>.comのような形式です。 これに関するヘルプについては、メール管理者に問い合わせてください。

[ポート番号]
このアカウントの SMTP サーバーのポート番号を入力します。 ほとんどの SMTP サーバーではポート 25 が使用されます。

このサーバーには、セキュリティで保護された接続 (SSL) が必要です
Secure Sockets Layer を使用して通信を暗号化します。

データベース エンジン サービス資格情報を使用した Windows 認証
SQL Server データベース エンジン サービス用に構成された資格情報を使用して SMTP サーバーに接続します。

基本認証
SMTP サーバーに必要なユーザー名とパスワードを指定します。

ユーザー名
データベース メールが SMTP サーバーへのログインに使用するユーザー名を入力します。 SMTP サーバーで基本認証が必要な場合は、ユーザー名が必要です。

パスワード
データベース メールが SMTP サーバーへのログインに使用するパスワードを入力します。 SMTP サーバーで基本認証が必要な場合は、パスワードが必要です。

[パスワードの確認入力]
パスワードをもう一度入力して、パスワードを確認します。 SMTP サーバーで基本認証が必要な場合は、パスワードが必要です。

[匿名認証]
メールは、ログイン資格情報なしで SMTP サーバーに送信されます。 SMTP サーバーが認証を必要としない場合は、このオプションを使用します。

[既存のアカウントの管理] ページ

このページを使用して、既存のデータベース メール アカウントを管理します。

アカウント名
表示、更新、または削除するアカウントを選択します。

削除
選択したアカウントを削除します。 選択したアカウントを削除する前に、関連付けられているプロファイルからこのアカウントを削除するか、そのようなプロファイルを削除する必要があります。

説明
アカウントの説明を表示または更新します。 説明は省略できます。

電子メール アドレス
アカウントの電子メール アドレスの名前を表示または更新します。 これは、電子メールの送信先の電子メール アドレスです。 たとえば、Microsoft SQL Server エージェントのアカウントは、 SqlAgent@Adventure-Works.comアドレスから電子メールを送信できます。

表示名
このアカウントから送信された電子メール メッセージに表示する名前を表示または更新します。 表示名は省略可能です。 これは、このアカウントから送信されたメッセージに表示される名前です。 たとえば、SQL Server エージェントのアカウントでは、電子メール メッセージに SQL Server Agent Automated Mailer という名前が表示される場合があります。

電子メールに返信する
このアカウントから送信された電子メール メッセージへの返信に使用される電子メール アドレスを表示または更新します。 返信電子メールは省略可能です。 たとえば、SQL Server エージェントのアカウントへの応答は、データベース管理者 ( danw@Adventure-Works.com) に送信される場合があります。

サーバー名
アカウントが電子メールの送信に使用する SMTP サーバーの名前を表示または更新します。 通常、これは smtp.< のような形式です。your_company>.com。 これに関するヘルプについては、メール管理者に問い合わせてください。

[ポート番号]
このアカウントの SMTP サーバーのポート番号を表示または更新します。 ほとんどの SMTP サーバーではポート 25 が使用されます。

このサーバーには、セキュリティで保護された接続 (SSL) が必要です
Secure Sockets Layer を使用して通信を暗号化します。

データベース エンジン サービス資格情報を使用した Windows 認証
SQL Server データベース エンジン サービス用に構成された資格情報を使用して SMTP サーバーに接続します。

基本認証
SMTP サーバーに必要なユーザー名とパスワードを指定します。

ユーザー名
データベース メールが SMTP サーバーへのログインに使用するユーザー名を表示または更新します。 SMTP サーバーで基本認証が必要な場合は、ユーザー名が必要です。

パスワード
データベース メールが SMTP サーバーへのログインに使用するパスワードを変更します。 SMTP サーバーで基本認証が必要な場合は、パスワードが必要です。

[パスワードの確認入力]
パスワードをもう一度入力して、パスワードを確認します。 SMTP サーバーで基本認証が必要な場合は、パスワードが必要です。

[匿名認証]
メールは、ログイン資格情報なしで SMTP サーバーに送信されます。 SMTP サーバーが認証を必要としない場合は、このオプションを使用します。

新しいプロフィールページ

このページを使用して、データベース メール プロファイルを作成します。 データベース メール プロファイルは、データベース メール アカウントのコレクションです。 プロファイルは、代替のデータベース メール アカウントを提供することで、電子メール サーバーに到達不能になった場合の信頼性を向上させます。 少なくとも 1 つのデータベース メール アカウントが必要です。 プロファイルでデータベース メール アカウントの優先度を設定する方法の詳細については、「 データベース メール プロファイルの作成」を参照してください。

[ 上へ移動 ] ボタンと [下へ移動 ] ボタンを使用して、データベース メール アカウントの使用順序を変更します。 この順序は、シーケンス番号と呼ばれる値によって決まります。 上へ移動 するとシーケンス番号が下がり、 下に移動 するとシーケンス番号が増えます。 シーケンス番号は、データベース メールがプロファイルのアカウントを使用する順序を決定します。 新しい電子メール メッセージの場合、データベース メールは、シーケンス番号が最も小さいアカウントで始まります。 そのアカウントが失敗した場合、データベース メールは、次にシーケンス番号が最も高いアカウントを使用し、データベース メールがメッセージを正常に送信するか、最も大きいシーケンス番号のアカウントが失敗するまで使用します。 シーケンス番号が最も多いアカウントが失敗した場合、データベース メールは、データベース メール AccountRetryDelay パラメーターで構成された時間だけメールの送信を試み、最も低いシーケンス番号から始まるメールの送信を再試行するプロセスを開始します。 データベース メール AccountRetryAttempts パラメーターを使用して、外部メール プロセスが指定したプロファイル内の各アカウントを使用して電子メール メッセージの送信を試行する回数を構成します。 AccountRetryDelay パラメーターと AccountRetryAttempts パラメーターは、データベース メール構成ウィザードの [システム パラメーターの構成] ページで構成できます。

[プロファイル名]
新しいプロファイルの名前を入力します。 プロファイルはこの名前で作成されます。 既存のプロファイルの名前は使用しないでください。

説明
プロファイルの説明を入力します。 説明は省略できます。

SMTP アカウント
プロファイルの 1 つ以上のアカウントを選択します。 優先順位は、データベース メールがアカウントを使用する順序を設定します。 アカウントが一覧に表示されない場合は、[ 追加 ] をクリックして続行し、新しい SMTP アカウントを追加する必要があります。

追加
プロファイルにアカウントを追加します。

削除
選択したアカウントをプロファイルから削除します。

上に移動
選択したアカウントの優先度を上げる。

下へ移動
選択したアカウントの優先度を下げます。

[既存のプロファイルの管理] ページ

このページを使用して、既存のデータベース メール プロファイルを管理します。 データベース メール プロファイルは、データベース メール アカウントのコレクションです。 プロファイルは、代替のデータベース メール アカウントを提供することで、電子メール サーバーに到達不能になった場合の信頼性を向上させます。 少なくとも 1 つのデータベース メール アカウントが必要です。 プロファイルでデータベース メール アカウントの優先度を設定する方法の詳細については、「 データベース メール プロファイルの作成」を参照してください。

[ 上へ移動 ] ボタンと [下へ移動 ] ボタンを使用して、データベース メール アカウントの使用順序を変更します。 この順序は、シーケンス番号と呼ばれる値によって決まります。 上へ移動 するとシーケンス番号が下がり、 下に移動 するとシーケンス番号が増えます。 シーケンス番号は、データベース メールがプロファイルのアカウントを使用する順序を決定します。 新しい電子メール メッセージの場合、データベース メールは、シーケンス番号が最も小さいアカウントで始まります。 そのアカウントが失敗した場合、データベース メールは、次にシーケンス番号が最も高いアカウントを使用し、データベース メールがメッセージを正常に送信するか、最も大きいシーケンス番号のアカウントが失敗するまで使用します。 シーケンス番号が最も多いアカウントが失敗した場合、データベース メールは、データベース メール AccountRetryDelay パラメーターで構成された時間だけメールの送信を試み、最も低いシーケンス番号から始まるメールの送信を再試行するプロセスを開始します。 データベース メール AccountRetryAttempts パラメーターを使用して、外部メール プロセスが指定したプロファイル内の各アカウントを使用して電子メール メッセージの送信を試行する回数を構成します。 AccountRetryDelay パラメーターと AccountRetryAttempts パラメーターは、データベース メール構成ウィザードの [システム パラメーターの構成] ページで構成できます。

[プロファイル名]
管理するプロファイルの名前を選択します。

削除
選択したプロファイルを削除します。 選択したプロファイルを削除して未送信のメッセージを失敗させる場合は [ はい ] を選択するか、未送信メッセージがない場合にのみ選択したプロファイルを削除する場合は [いいえ ] を選択するように求められます。

説明
選択したプロファイルの説明を表示または変更します。 説明は省略できます。

SMTP アカウント
プロファイルの 1 つ以上のアカウントを選択します。 フェールオーバーの優先順位は、フェールオーバーの場合にデータベース メールがアカウントを使用する順序を設定します。

追加
プロファイルにアカウントを追加します。

削除
選択したアカウントをプロファイルから削除します。

上に移動
選択したアカウントのフェールオーバー優先度を上げる。

下へ移動
選択したアカウントのフェールオーバー優先度を下げます。

優先順位
アカウントの現在のフェールオーバー優先度を表示します。

アカウント名
アカウントの名前を表示します。

メルアド
アカウントの電子メール アドレスを表示します。

[プロファイルへのアカウントの追加] ページ

このページを使用して、プロファイルに追加するアカウントを選択します。 [アカウント ] ボックスから既存のアカウントを選択するか、[ 新しいアカウント] をクリックします。

アカウント名
プロファイルに追加するアカウントの名前を選択します。

電子メール アドレス
選択したアカウントの電子メール アドレスを表示します。 このページから電子メール アドレスを変更することはできません。 アカウントの電子メール アドレスを変更するには、ウィザードのメイン ページに戻り、[ データベース メール アカウントとプロファイルの管理 ] オプションを選択します。

サーバー名
選択したアカウントのメール サーバー名を表示します。 このページからサーバー名を変更することはできません。 アカウントのサーバー名を変更するには、ウィザードのメイン ページに戻り、[ データベース メール アカウントとプロファイルの管理 ] オプションを選択します。

新しいアカウント
新しいアカウントを作成します。

[アカウントとプロファイルの管理] ページ

このページを使用して、プロファイルまたはアカウントを管理するタスクを選択します。

新しいアカウントを作成する
新しいアカウントを作成します。

既存のアカウントを表示、変更、または削除する
既存のアカウントを管理または削除します。

新しいプロファイルを作成する
新規プロファイルを作成します。

既存のプロファイルを表示、変更、または削除します。 プロファイルに関連付けられているアカウントを管理することもできます。
既存のプロファイルを更新または削除します。 このオプションでは、プロファイルに関連付けられているアカウントを管理することもできます。

[プロファイル セキュリティの管理] の [パブリック] タブ

このページを使用して、パブリック プロファイルを構成します。

プロファイルは、パブリックまたはプライベートです。 プライベート プロファイルには、特定のユーザーまたはロールのみがアクセスできます。 パブリック プロファイルを使用すると、メール ホスト データベース (msdb) にアクセスできるユーザーまたはロールは、そのプロファイルを使用して電子メールを送信できます。

プロファイルは既定のプロファイルである可能性があります。 この場合、ユーザーまたはロールは、プロファイルを明示的に指定せずに、プロファイルを使用して電子メールを送信できます。 電子メール メッセージを送信するユーザーまたはロールに既定のプライベート プロファイルがある場合、データベース メールはそのプロファイルを使用します。 ユーザーまたはロールに既定のプライベート プロファイルがない場合、 sp_send_dbmailmsdb データベースの既定のパブリック プロファイルを使用します。 ユーザーまたはロールの既定のプライベート プロファイルがなく、データベースの既定のパブリック プロファイルがない場合、 sp_send_dbmail はエラーを返します。 既定のプロファイルとしてマークできるプロファイルは 1 つだけです。

公共
指定したプロファイルをパブリックにするには、このオプションを選択します。

プロファイル名
プロファイルの名前を表示します。

既定のプロファイル
指定したプロファイルを既定のプロファイルにするには、このオプションを選択します。

既存のパブリック プロファイルのみを表示する
指定したデータベースのパブリック プロファイルのみを表示するには、このオプションを選択します。

[プロファイル セキュリティの管理] の [プライベート] タブ

このページを使用して、プライベート プロファイルを構成します。

プロファイルは、パブリックまたはプライベートです。 プライベート プロファイルには、特定のユーザーまたはロールのみがアクセスできます。 パブリック プロファイルを使用すると、メール ホスト データベース (msdb) にアクセスできるユーザーまたはロールは、そのプロファイルを使用して電子メールを送信できます。

プロファイルは既定のプロファイルである可能性があります。 この場合、ユーザーまたはロールは、プロファイルを明示的に指定せずに、プロファイルを使用して電子メールを送信できます。 電子メール メッセージを送信するユーザーまたはロールに既定のプライベート プロファイルがある場合、データベース メールはそのプロファイルを使用します。 ユーザーまたはロールに既定のプライベート プロファイルがない場合、 sp_send_dbmailmsdb データベースの既定のパブリック プロファイルを使用します。 ユーザーまたはロールの既定のプライベート プロファイルがなく、データベースの既定のパブリック プロファイルがない場合、 sp_send_dbmail はエラーを返します。

ユーザー名
msdb データベース内のユーザーまたはロールの名前を選択します。

アクセス
ユーザーまたはロールが指定したプロファイルにアクセスできるかどうかを選択します。

[プロファイル名]
プロファイルの名前を表示します。

既定のプロファイルかどうか
プロファイルがユーザーまたはロールの既定のプロファイルかどうかを選択します。 各ユーザーまたはロールは、既定のプロファイルを 1 つだけ持つことができます。

このユーザーの既存のプライベート プロファイルのみを表示する
指定したユーザーまたはロールが既にアクセス権を持っているプロファイルのみを表示するには、このオプションを選択します。

システム パラメーターの構成

このページを使用して、データベース メール のシステム パラメーターを指定します。 システム パラメーターと各パラメーターの現在の値を表示します。 パラメーターを選択すると、情報ウィンドウに簡単な説明が表示されます。

アカウントの再試行
外部メール プロセスが、指定したプロファイル内の各アカウントを使用して電子メール メッセージの送信を試行する回数。

アカウント再試行の遅延 (秒)
外部メール プロセスがプロファイル内のすべてのアカウントを使用してメッセージを配信してから、すべてのアカウントを再試行するまで待機する時間 (秒単位)。

最大ファイル サイズ (バイト)
添付ファイルの最大サイズ (バイト単位)。

禁止されている添付ファイル拡張子
電子メール メッセージの添付ファイルとして送信できない拡張機能のコンマ区切りのリスト。 参照ボタン (...) をクリックして、拡張機能を追加します。

データベース メール実行可能ファイルの最小有効期間 (秒)
外部メール プロセスがアクティブな状態を維持する最小時間 (秒単位)。 データベース メール キューに電子メールがある限り、プロセスはアクティブなままです。 このパラメーターは、処理するメッセージがない場合にプロセスがアクティブなままの時間を指定します。

ログ記録レベル
データベース メール ログに記録するメッセージを指定します。 使用可能な値は次のとおりです。

  • 標準 - エラーのみをログに記録する

  • 拡張 - エラー、警告、情報メッセージをログに記録する

  • 詳細 - エラー、警告、インフォメーションメッセージ、成功メッセージ、内部用の追加メッセージをログに記録します。 トラブルシューティングには詳細ログを使用します。

既定値は Extended です。

すべてリセット
ページの値を既定値にリセットするには、このオプションを選択します。

ウィザード ページを完了する

このページを使用して、 データベース メール構成ウィザード が実行するアクションを確認します。 ウィザードが完了するまで、変更は行われません。

テスト電子メール送信ページ

指定したデータベース メール プロファイルを使用して電子メール メッセージを送信するには<instance_name>テスト電子メールの送信ページを使用します。 このページを使用してテスト電子メールを送信できるのは、 sysadmin 固定サーバー ロールのメンバーだけです。

[データベース メール プロファイル]
一覧からデータベース メール プロファイルを選択します。 これは必須フィールドです。 プロファイルが表示されない場合は、プロファイルが存在しないか、プロファイルに対するアクセス許可がありません。 データベース メール構成ウィザードを使用して、プロファイルを作成および構成します。 プロファイルが一覧に表示されない場合は、データベース メール構成ウィザードを使用して、使用するプロファイルを作成します。

から
メッセージ受信者の電子メール アドレス。 少なくとも 1 人の受信者が必要です。

件名
テスト電子メールの件名。 トラブルシューティングのためにメールをより適切に識別できるように、既定の件名を変更します。

ボディー
テスト電子メールの本文。 トラブルシューティングのためにメールをより適切に識別できるように、既定の件名を変更します。

[データベース メール テスト電子メール] ダイアログ ボックスは、データベース メールがメッセージを送信しようとしたテスト メッセージを確認し、テスト電子メール メッセージのmailitem_idを提供します。 受信者に問い合わせて、電子メールが届いたかどうかを確認します。 通常、電子メールは数分で受信されますが、ネットワーク パフォーマンスが低下したり、メール サーバーでのメッセージのバックログが発生したり、サーバーが一時的に使用できなくなったりするため、電子メールが遅れる可能性があります。 トラブルシューティングには 、mailitem_id を使用します。

送信済み電子メール
テスト電子メール メッセージの mailitem_id

[トラブルシューティング]
[ データベース メールのトラブルシューティング] トピックをクリックしてオンライン ブックを開きます。

テンプレートの使用

データベース メール構成スクリプトを作成するには

  1. [ 表示 ] メニューの [ テンプレート エクスプローラー] を選択します。

  2. [テンプレート エクスプローラー] ウィンドウで、[データベース メール] フォルダーを展開します。

  3. [ Simple Database Mail Configuration]\(単純なデータベース メール構成\) をダブルクリックします。 テンプレートが新しいクエリ ウィンドウで開きます。

  4. [ クエリ ] メニューの [ テンプレート パラメーターの値の指定] を選択します。 [ テンプレート パラメーターの置換] ウィンドウが開きます。

  5. profile_name、account_nameSMTP_servernameemail_address、およびdisplay_nameの値を入力します。 SQL Server Management Studio によって、テンプレートに指定した値が入力されます。

  6. スクリプトを実行して構成を作成します。

  7. このスクリプトでは、データベース ユーザーにプロファイルへのアクセス権は付与されません。 そのため、既定では、プロファイルは sysadmin 固定セキュリティ ロールのメンバーのみが使用できます。 プロファイルへのアクセス権の付与の詳細については、sysmail_add_principalprofile_sp (Transact-SQL) を参照してください。