ログ配布の監視 (Transact-SQL)Monitor Log Shipping (Transact-SQL)

適用対象: ○SQL Server XAzure SQL Database XAzure SQL Data Warehouse XParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

ログ配布を構成すると、すべてのログ配布サーバーの状態に関する情報を監視できます。After you have configured log shipping, you can monitor information about the status of all the log shipping servers. ログ配布操作の履歴と状態は、ログ配布ジョブにより、常にローカルに保存されます。The history and status of log shipping operations are always saved locally by the log shipping jobs. バックアップ操作の履歴と状態はプライマリ サーバーに格納され、コピー操作と復元操作の履歴と状態はセカンダリ サーバーに格納されます。The history and status of the backup operation are stored at the primary server, and the history and status of the copy and restore operations are stored at the secondary server. リモートの監視サーバーを実装している場合、この情報はリモートの監視サーバーにも格納されます。If you have implemented a remote monitor server, this information is also stored on the monitor server.

ログ配布操作がスケジュールどおりに実行されなかった場合に警告を発生させることができます。You can configure alerts that will fire if log shipping operations fail to occur as scheduled. エラーは、バックアップ操作と復元操作の状態を監視する警告ジョブによって発生します。Errors are raised by an alert job that watches the status of the backup and restore operations. これらのエラーの発生をオペレーターに通知する警告を定義できます。You can define alerts that notify an operator when these errors are raised. 監視サーバーを構成している場合、警告ジョブは、ログ配布構成に関するすべての操作に対してエラーを発生させる監視サーバーで実行されます。If a monitor server is configured, one alert job runs on the monitor server that raises errors for all operations in the log shipping configuration. 監視サーバーが指定されていない場合、警告ジョブは、バックアップ操作を監視しているプライマリ サーバー インスタンスで実行されます。If a monitor server is not specified, an alert job runs on the primary server instance, which monitors the backup operation. 監視サーバーが指定されていない場合、警告ジョブは、ローカルのコピー操作と復元操作を監視している各セカンダリ サーバー インスタンスでも実行されます。If a monitor server is not specified, an alert job also runs on each secondary server instance to monitor the local copy and restore operations.

重要

ログ配布構成を監視するには、ログ配布を有効にするときに監視サーバーを追加する必要があります。To monitor a log shipping configuration, you must add the monitor server when you enable log shipping. 監視サーバーを後で追加する場合は、ログ配布構成を削除して、代わりに監視サーバーを含む新しい構成を用意します。If you add a monitor server later, you must remove the log shipping configuration and then replace it with a new configuration that includes a monitor server. 詳細については、「 ログ配布の構成 (SQL Server)で導入されました。For more information, see Configure Log Shipping (SQL Server). 監視サーバーは、一度構成すると、最初にログ配布を削除しない限り変更できません。Furthermore, after the monitor server has been configured, it cannot be changed without removing log shipping first.

監視情報を含む履歴テーブルHistory Tables Containing Monitoring Information

監視の履歴テーブルには、監視サーバーに格納されているメタデータが含まれています。The monitoring history tables contain metadata that is stored on the monitor server. また、指定されているプライマリ サーバーやセカンダリ サーバーに固有の情報のコピーもローカルに格納されています。A copy of information specific to a given primary or secondary server is also stored locally.

これらのテーブルでクエリを実行して、ログ配布セッションの状態を監視できます。You can query these tables to monitor the status of a log shipping session. たとえば、ログ配布の状態を参照するには、バックアップ ジョブ、コピー ジョブ、および復元ジョブの状態と履歴を確認します。For example, to learn status of log shipping, check the status and history of the backup job, copy job, and restore job. 以下の監視テーブルをクエリすることにより、特定のログ配布の履歴とエラーの詳細を参照できます。You can view specific log shipping history and error details by querying the following monitoring tables.

テーブルTable [説明]Description
log_shipping_monitor_alertlog_shipping_monitor_alert 警告ジョブ ID を格納します。Stores alert job ID.
log_shipping_monitor_error_detaillog_shipping_monitor_error_detail ログ配布ジョブのエラーの詳細を格納します。Stores error details for log shipping jobs. このテーブルをクエリして、あるエージェント セッションのエラーを参照することができます。You can query this table see the errors for an agent session. 必要に応じて、エラーが記録された日付と時刻でエラーを並べ替えることができます。Optionally, you can sort the errors by the date and time at which each was logged. 各エラーは一連の例外として記録されるので、1 つのエージェント セッションで複数のエラー (シーケンス) が記録されることがあります。Each error is logged as a sequence of exceptions, and multiple errors (sequences) can per agent session.
log_shipping_monitor_history_detaillog_shipping_monitor_history_detail ログ配布エージェントの履歴の詳細情報を格納します。Contains history details for log shipping agents. このテーブルをクエリして、エージェント セッションの履歴の詳細情報を参照することができます。You can query this table to see the history detail for an agent session.
log_shipping_monitor_primarylog_shipping_monitor_primary ログ配布構成ごとに、前回のバックアップ ファイルおよび監視に役立つ最後に復元したファイルに関する情報を含む、プライマリ データの管理レコードを格納します。Stores one monitor record for the primary database in each log shipping configuration, including information about the last backup file and last restored file that is useful for monitoring.
log_shipping_monitor_secondarylog_shipping_monitor_secondary 前回のバックアップ ファイルおよび監視に役立つ最後に復元したファイルに関する情報を含む、セカンダリ データの管理レコードを格納します。Stores one monitor record for each secondary database, including information about the last backup file and last restored file that is useful for monitoring.

ログ配布を監視するためのストアド プロシージャStored Procedures for Monitoring Log Shipping

監視情報と履歴情報は、 msdbのテーブルに格納されます。このテーブルには、ログ配布ストアド プロシージャを使用してアクセスできます。Monitoring and history information is stored in tables in msdb, which can be accessed using log shipping stored procedures. 次の表に示すサーバーで、これらのストアド プロシージャを実行します。Run these stored procedures on the servers indicated in the following table.

ストアド プロシージャStored procedure [説明]Description プロシージャを実行するサーバーRun this procedure on
sp_help_log_shipping_monitor_primarysp_help_log_shipping_monitor_primary log_shipping_monitor_primary テーブルから、指定したプライマリ データベースの監視レコードを返します。Returns monitor records for the specified primary database from the log_shipping_monitor_primary table. 監視サーバーまたはプライマリ サーバーMonitor server or primary server
sp_help_log_shipping_monitor_secondarysp_help_log_shipping_monitor_secondary log_shipping_monitor_secondary テーブルから、指定したセカンダリ データベースの監視レコードを返します。Returns monitor records for the specified secondary database from the log_shipping_monitor_secondary table. 監視サーバーまたはセカンダリ サーバーMonitor server or secondary server
sp_help_log_shipping_alert_jobsp_help_log_shipping_alert_job 警告ジョブのジョブ ID を返します。Returns the job ID of the alert job. 監視サーバー (監視サーバーが定義されていない場合はプライマリ サーバーまたはセカンダリ サーバー)Monitor server, or primary or secondary server if no monitor is defined
sp_help_log_shipping_primary_databasesp_help_log_shipping_primary_database プライマリ データベースの設定を取得し、 log_shipping_primary_databases テーブルと log_shipping_monitor_primary テーブルの値を表示します。Retrieves primary database settings and displays the values from the log_shipping_primary_databases and log_shipping_monitor_primary tables. プライマリ サーバーPrimary server
sp_help_log_shipping_primary_secondarysp_help_log_shipping_primary_secondary プライマリ データベースのセカンダリ データベース名を取得します。Retrieves secondary database names for a primary database. プライマリ サーバーPrimary server
sp_help_log_shipping_secondary_databasesp_help_log_shipping_secondary_database log_shipping_secondarylog_shipping_secondary_databases 、および log_shipping_monitor_secondary の各テーブルからセカンダリ データベースの設定を取得します。Retrieves secondary-database settings from the log_shipping_secondary, log_shipping_secondary_databases and log_shipping_monitor_secondary tables. セカンダリ サーバーSecondary server
sp_help_log_shipping_secondary_primary (Transact-SQL)sp_help_log_shipping_secondary_primary (Transact-SQL) セカンダリ サーバーにある指定されたプライマリ データベースの設定を取得します。This stored procedure retrieves the settings for a given primary database on the secondary server. セカンダリ サーバーSecondary server

参照See Also

ログ配布レポートの表示 (SQL Server Management Studio) View the Log Shipping Report (SQL Server Management Studio)
ログ配布のストアド プロシージャとテーブルLog Shipping Stored Procedures and Tables