演算子
適用対象:SQL Server
Azure SQL Managed Instance
重要
Azure SQL Managed Instance では、SQL Server エージェントのほとんどの機能が現在サポートされているわけではありません。 詳細については、Azure SQL Managed Instance の T-SQL と SQL Server の違いの を参照してください。
オペレーターは、ジョブが完了したとき、またはアラートが発生したときに電子通知を受け取ることができるユーザーまたはグループのエイリアスです。 SQL Server エージェント サービスは、オペレーターを介した管理者の通知をサポートします。 オペレーターは、SQL Server エージェントの通知および監視機能を有効にします。
演算子の属性と概念
演算子の主な属性は次のとおりです。
オペレーター名
連絡先情報
演算子の名前付け
すべての演算子には名前が必要です。 オペレーター名は、SQL Server インスタンス内で一意である必要があり、128 文字 以下にする必要があります。
連絡先情報
オペレーターの連絡先情報は、オペレーターに通知する方法を定義します。 オペレーターには、電子メール、ポケットベル、または net send コマンドを使用して通知できます。
大事な
将来のバージョンでは、Pageと net send オプションは、Microsoft SQL Server で SQL Server Agent から削除される予定となっています。 新しい開発作業ではこれらの機能を使用しないでください。また、現在これらの機能を使用しているアプリケーションを変更することを計画してください。
電子メール通知
電子メール通知は、オペレーターに電子メール メッセージを送信します。 電子メール通知の場合は、オペレーターの電子メール アドレスを指定します。
ポケットベル通知
ページングは電子メールによって実装されます。 ポケットベル通知の場合は、オペレーターがポケットベル メッセージを受信する電子メール アドレスを指定します。 ポケットベル通知を設定するには、受信メールを処理してポケットベル メッセージに変換するソフトウェアをメール サーバーにインストールする必要があります。 ソフトウェアは、次のようないくつかのアプローチのいずれかを取ることができます。
ポケットベル プロバイダーのサイトにあるリモート メール サーバーにメールを転送する。
ポケットベル プロバイダーはこのサービスを提供する必要がありますが、必要なソフトウェアはローカル メール システムの一部として一般公開されています。 詳細については、ポケットベルの説明書を参照してください。
インターネットを使用して、ポケットベル プロバイダーのサイトにある電子メール サーバーに電子メールをルーティングします。
これは、最初のアプローチのバリエーションです。
着信電子メールを処理し、接続されているモデムを使用してポケットベルをダイヤルします。
このソフトウェアは、ポケットベル サービス プロバイダー専用です。 このソフトウェアは、電子メール アドレス情報の全部または一部をポケットベル番号として解釈するか、電子メール名を翻訳テーブルのポケットベル番号と照合することによって、受信トレイを定期的に処理する電子メール クライアントとして機能します。
すべてのオペレーターがポケットベル プロバイダーを共有している場合は、SQL Server Management Studio を使用して、ポケットベルから電子メールへのシステムで必要な特別な電子メール形式を指定できます。 特殊な書式にはプレフィックスまたはサフィックスを指定でき、電子メールの次の行に含めることができます。
件名:
CC:
からへ:
手記
容量の少ない英数字ページング システムを使用する場合は、ポケットベル通知からエラー テキストを除外することで送信されるテキストを短縮できます。 容量の少ない英数字ページング システムの例としては、1 ページあたり 64 文字に制限されています。
net sendnotification
これにより、net send コマンドを使用してオペレーターにメッセージが送信されます。 ネット送信の場合は、ネットワーク メッセージの受信者 (コンピューターまたはユーザー) を指定します。
手記
net send コマンドは、Microsoft Windows Messenger を使用します。 アラートを正常に送信するには、SQL Server が実行されているコンピューターとオペレーターが使用するコンピューターの両方で、このサービスが実行されている必要があります。
アラート演算子と Fail-Safe 演算子
アラートに応答して通知するオペレーターを選択できます。 たとえば、アラートをスケジュールすることで、オペレーター通知のローテーション責任を割り当てることができます。 たとえば、月曜日、水曜日、金曜日に発生したアラートは個別 A に通知され、個々の B には火曜日、木曜日、または土曜日に発生するアラートが通知されます。
指定されたオペレーターに対するすべてのポケットベル通知が失敗した後、フェールセーフオペレーターはアラート通知を受け取ります。 たとえば、ポケットベル通知に対して 3 つの演算子を定義し、指定された演算子をページングできない場合、フェールセーフなオペレーターに通知されます。
フェールセーフ オペレーターは、次の場合に通知を受け取ります。
アラートを担当するオペレーターをページングできませんでした。
プライマリ オペレーターに到達できない理由には、不適切なポケットベル アドレスと非勤務のオペレーターが含まれます。
SQL Server エージェントは、msdb データベース内のシステム テーブルにアクセスできません。
システム テーブル sysnotifications は、アラートのオペレーターの責任を指定します。
フェールセーフオペレーターはセキュリティ機能です。 フェールセーフ義務に割り当てられたオペレーターは、別のオペレーターにフェールセーフな義務を再割り当てしたり、フェールセーフ割り当てを完全に削除したりせずに削除することはできません。
オペレーターへの通知
オペレーターに通知するには、次の 1 つ以上を設定する必要があります。
データベース メール機能を使用して電子メールを送信するには、SMTP をサポートする電子メール サーバーにアクセスできる必要があります。
ページングの場合は、サード パーティ製のポケットベルから電子メールへのソフトウェアやハードウェアが必要です。
net sendを使用するには、オペレーターが指定されたコンピューターにログオンしている必要があり、そのコンピューターが Windows Messenger からのメッセージを許可する必要があります。
関連タスク
用事 | 話題 |
---|---|
演算子の作成に関連するタスク | 演算子 を作成する Fail-Safe の 演算子を指定する |
アラートの割り当てに関連するタスク | オペレーター にアラートを割り当てる アラートへの応答を定義する (SQL Server Management Studio) sp_add_notification (Transact-SQL) オペレーター にアラートを割り当てる |