Open棟梁Project - マイクロソフト系技術情報 Wiki

目次

概要

障害復旧に関するオプションの説明。

SQL Server の復旧モデル

SQL Serverでは、「データ消失に対する保護」、「性能」、および「ディスクとテープの容量」
などの要件に対応するための目的とした3種類の「復旧モデル」を用意されている。
このため、「復旧モデル」を選択する場合は、次の業務上の条件とトレードオフを考慮する必要がある。

概要

実行する操作の種類によっては、適切な「復旧モデル」が複数あることもある。
「復旧モデル」を選択した後は、バックアップ、リストアの手順を計画する必要がある。

次に、SQL Server の3 種類の「復旧モデル」の機能概要を示す。

単純 復旧モデル

完全 復旧モデル

データが最大限に保護される。これらのモデルは「トランザクション ログ」からデータを復旧することができる。

一括ログ 復旧モデル

データが最大限に保護される。これらのモデルは「トランザクション ログ」からデータを復旧することができる。

利点、欠点

以下の表に、それぞれの「復旧モデル」の利点と欠点を示す。

復旧モデルデータ消失の影響度性能運用手順の難易度必要なログ領域の容量
単純容易
完全最小普通
一括ログ難しい

設定方法

Management Studio

「sp_configure」による設定

参考

SQL Server の復旧時間の最大値

「チェック ポイント」処理

「チェック ポイント」処理とは、「バッファ キャッシュ」中のデータを「データ ファイル」にフラッシュする処理である。
※ データ変更は、コミット、未コミットに関係なく、すべて「トランザクション ログ ファイル」に書き込まれる。

「チェック ポイント」処理

復旧処理(ロールバック、ロールフォワード)

復旧処理では、「データ ファイル」にフラッシュされていなかった変更を「トランザクション ログ」上の記録を元に、「データ ファイル」に反映する。
この際、「コミット」されたトランザクションは、「ロール フォワード」され、「未コミット」のトランザクションは、「ロール バック」される。

ロールバック、ロールフォワード

「recovery interval」オプション

障害発生後、SQL Serverインスタンスを再起動した場合に発生する

といった、復旧にかかる時間(分単位)の最大値を設定する。

チューニングの考え方

復旧時間を短くしたい場合

「recovery interval」オプションで復旧時間を短く設定する。
この場合、「チェック ポイント」処理は頻繁に実行されるためI/Oが増える。

I/Oを減らしたい場合

「recovery interval」オプションで復旧時間を長く設定すれば、
「チェック ポイント」処理の間隔を長くすることができる。
このため、I/Oが減少するので、(I/Oに関する)性能向上が期待できる。

設定方法

Management Studio

「sp_configure」による設定

EXEC sp_configure 'recovery interval', n
RECONFIGURE
EXEC sp_configure
GO

nの単位は、分で指定する。


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS