次の方法で共有


sp_dbmmonitorchangealert (Transact-SQL)

適用対象: SQL Server

指定したミラーリングのパフォーマンス基準に対する警告しきい値を追加または変更します。

Transact-SQL 構文表記規則

sp_dbmmonitorchangealert
    [ @database_name = ] N'database_name'
    , [ @alert_id = ] alert_id
    , [ @threshold = ] threshold
    [ , [ @enabled = ] enabled ]
[ ; ]

引数

[ @database_name = ] N'database_name'

指定した警告しきい値を追加または変更するデータベースを指定します。 @database_namesysname で、既定値はありません。

[ @alert_id = ] alert_id

追加または変更される警告を識別する整数値。 @alert_idint で、次のいずれかの値である必要があります。

パフォーマンス基準 警告しきい値
1 最も古い未送信のトランザクション 送信キュー内にトランザクションを累積できる時間 (分単位) を指定します。この時間を経過すると、プリンシパル サーバー インスタンスで警告が生成されます。 この警告は、時間の観点からデータ損失の可能性を測定するのに役立ち、高パフォーマンス モードに関連する可能性があります。 パートナーとの通信が切断されたためにミラーリングが一時停止または中断している場合は、高安全モードにも関係します。
2 未送信のログ 未送信のログのサイズ (KB) を指定します。このサイズを超えると、プリンシパル サーバー インスタンスで警告が生成されます。 この警告は、KB 単位でデータ損失の可能性を測定するのに役立ち、高パフォーマンス モードに関連する可能性があります。 パートナーとの通信が切断されたためにミラーリングが一時停止または中断している場合は、高安全モードにも関係します。
3 未復元のログ 未復元のログのサイズ (KB) を指定します。このサイズを超えると、ミラー サーバー インスタンスで警告が生成されます。 この警告は、 時間を測定するのに役立ちます。 フェールオーバー時間は、主に、以前のミラー サーバーが再実行キューに残っているログをロールフォワードするために必要な時間と、短時間の追加時間で構成されます。
4 ミラー コミットのオーバーヘッド 許容可能な、トランザクションあたりの平均遅延時間 (ミリ秒単位) を指定します。この時間を経過すると、プリンシパル サーバーで警告が生成されます。 この遅延時間は、ミラー サーバー インスタンスによってトランザクションのログ レコードが再実行キューに書き込まれるのをプリンシパル サーバー インスタンスが待機している間、発生したオーバーヘッドの量になります。 この値は高安全モードにのみ関係します。
5 保持期間 データベース ミラーリング状態テーブルの行の保持期間を制御するメタデータ。

警告に対応するイベント ID については、「 ミラーリング パフォーマンス メトリック (SQL Server) での警告しきい値とアラートの使用」を参照してください。

[ @threshold = ] しきい値

警告のしきい値。 @thresholdint で、既定値はありません。 ミラーリングの状態が更新されたときにこのしきい値を超える値が返された場合は、Windows イベント ログにエントリが入力されます。 この値は、パフォーマンス メトリックに応じて KB、分、またはミリ秒を表します。

Note

現在の値を表示するには、 sp_dbmmonitorresults ストアド プロシージャを実行します。

[ @enabled = ] enabled

警告を有効にするかどうかを指定します。 @enabledbit で、既定値は 1 です。 保有期間は常に有効になります。

  • 0 = 警告は無効です。
  • 1 = 警告が有効です。

リターン コードの値

なし。

結果セット

なし。

アクセス許可

sysadmin固定サーバー ロールのメンバーシップが必要です。または、このストアド プロシージャに対して直接アクセス許可を実行する必要があります。

次の例では、AdventureWorks2022 データベースについて、各パフォーマンス基準のしきい値と保有期間を設定します。 次の表は、この例で使用される値を示しています。

alert_id パフォーマンス基準 警告しきい値 警告が有効になっていますか?
1 最も古い未送信のトランザクション 30 分 はい
2 未送信のログ 10,000 KB はい
3 未復元のログ 10,000 KB はい
4 ミラー コミットのオーバーヘッド 1,000 ミリ秒 いいえ
5 保持期間 8 時間 はい
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 1, 30, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 2, 10000, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 3, 10000, 1;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 4, 1000, 0;
EXEC sp_dbmmonitorchangealert AdventureWorks2022, 5, 8, 1;