重大度レベルを使用した警告の作成
このトピックでは、SQL Server 2012 で SQL Server Management Studio または Transact-SQL を使用して、特定の重大度レベルのイベントが発生したときに生成される Microsoft SQL Server エージェントの警告を作成する方法について説明します。
このトピックの内容
作業を開始する準備:
制限事項と制約事項
セキュリティ
重大度レベルを使用して警告を作成する方法:
SQL Server Management Studio
Transact-SQL
作業を開始する準備
制限事項と制約事項
SQL Server Management Studio は、警告システム全体を簡単に管理できるグラフィカルなツールです。警告の基本構成を設定するには、SQL Server Management Studio を使用することをお勧めします。
xp_logevent で生成されたイベントは master データベースで発生します。 このため、xp_logevent では、警告の @database_name が 'master' または NULL になっていないと、警告が起動されません。
重大度レベル 19 ~ 25 では、Microsoft Windows アプリケーション ログに SQL Server メッセージが送信され、警告が起動されます。 重大度レベルが 19 未満のイベントでは、sp_altermessage、RAISERROR WITH LOG、xp_logevent のいずれかを使用して Windows アプリケーション ログへの書き込みを強制した場合のみ、警告が起動されます。
セキュリティ
権限
既定では、sp_add_alert を実行できるのは、sysadmin 固定サーバー ロールのメンバーだけです。
[Top]
SQL Server Management Studio の使用
重大度レベルを使用して警告を作成するには
オブジェクト エクスプローラーで、プラス記号をクリックして、重大度レベルを使用した警告を作成するサーバーを展開します。
プラス記号をクリックして [SQL Server エージェント] を展開します。
[警告] を右クリックし、[新しい警告] をクリックします。
[新しい警告] ダイアログ ボックスで、[名前] ボックスに新しい警告の名前を入力します。
[種類] ボックスの一覧の [SQL Server イベント警告] をクリックします。
[イベント警告定義] で、[データベース名] ボックスの一覧からデータベースを選択して、警告を特定のデータベースに限定します。
[警告が発生する条件] の [重大度] をクリックし、警告を発生させる重大度を選択します。
特定の文字列が含まれている場合のみ警告を生成するには、[メッセージに次の内容が含まれている場合に警告する] チェック ボックスをオンにし、[メッセージ テキスト] ボックスにキーワードまたは文字列を入力します。 使用できる文字数は最大 100 文字です。
[OK] をクリックします。
[Top]
Transact-SQL の使用
重大度レベルを使用して警告を作成するには
オブジェクト エクスプローラーで、データベース エンジンのインスタンスに接続します。
[標準] ツール バーの [新しいクエリ] をクリックします。
次の例をコピーしてクエリ ウィンドウに貼り付け、[実行] をクリックします。
-- adds an alert (Test Alert) that runs the Back up the AdventureWorks2012 Database job when fired -- assumes that the message 55001 and the Back up the AdventureWorks2012 Database job already exist. USE msdb ; GO EXEC dbo.sp_add_alert @name = N'Test Alert', @message_id = 55001, @severity = 0, @notification_message = N'Error 55001 has occurred. The database will be backed up...', @job_name = N'Back up the AdventureWorks2012 Database' ; GO
詳細については、「sp_add_alert (Transact-SQL)」を参照してください。
[Top]