SQL Server - Microsoft

Download Report

Transcript SQL Server - Microsoft

SQL Server Always On
Technologies の概要
NRI ラーニング ネットワーク
ラーニング ソリューション部
Agenda




2
高可用性ソリューションの必要性
バックアップと復元の基本
フェールオーバー クラスタリングとは
データベース ミラーリングとは
データベースのファイル構成

データ ファイルとログ ファイル
データファイル (*.mdf)
ログ ファイル (*.ldf)
3
データ参照時の動作

バッファキャッシュにデータがないと物理 I/O が発生
SQL Server
バッファキャッシュ
① SELECT・・
③ 結果
②
ディスクから読み取り
ログキャッシュ
データファイル (*.mdf)
ログ ファイル (*.ldf)
4
データ更新時の動作


変更履歴は先行書き込みされる
バッフアキャッシュの変更データはチェックポイント時に一括で書き込まれる
SQL Server
⑤ バッファキャッシュ内の変更
④
⑦ チェックポイント時に
一括でディスク書き込み
UPDATE ・ ・
INSERT・・
ログキャッシュ
UPDATE・・
INSERT・・
データファイル (*.mdf)
⑥ 先行書き込み
UPDATE・・
INSERT・・
ログ ファイル (*.ldf)
5
高可用性の阻害要因
サイト災害
SQL Server
インスタンス障
害
⑤ バッファキャッシュ内の変更
⑦ チェックポイント時に
一括でディスク書き込み
操作ミス
④
ディスク障害
UPDATE ・ ・
INSERT・・
ログキャッシュ
ネットワーク障
害
UPDATE・・
INSERT・・
データファイル (*.mdf)
⑥ 先行書き込み
ディスク障害
サーバー障害
UPDATE・・
INSERT・・
保守による計画され
た停止
6
ログ ファイル (*.ldf)
高可用性の阻害要因
人為的操作ミス
32%
ソフトウェアの
不具合
14%
コンピュータ
ウィルス
7%
論理的な障害
サイト災害
3%
物理的な障害
ハード または
システム障害
44%
7
Source: ZDNet, October 2002
Agenda




8
高可用性ソリューションの必要性
バックアップと復元の基本
フェールオーバー クラスタリングとは
データベース ミラーリングとは
SQL Server のバックアップ


オンライン バックアップをサポート
バックアップの種類

完全



差分



完全バックアップの実施が前提
前回の完全バックアップ以降に変更されたエクステントをバック
アップ
トランザクション ログ



9
データベース全体をバックアップ
障害回復時のベースラインとなる
完全バックアップの実施が前提
直近のトランザクション ログ バックアップ以降のログ (変更履歴)
をバックアップ
アクティブではないログは切り捨てる
バックアップ シナリオ
完全 + ログ バックアップ




基本パターン
完全バックアップ と ログ バックアップを定期的に実行
完全バックアップのみの運用に比べ、バックアップ時間が短い
時間指定の復元が可能
① 完全
バックアップ
② ログ
時間
10
バックアップ シナリオ
完全 + ログ バックアップ




基本パターン
完全バックアップ と ログ バックアップを定期的に実行
完全バックアップのみの運用に比べ、バックアップ時間が短い
時間指定の復元が可能
① 完全
バックアップ
② ログ ③ ログ
時間
11
バックアップ シナリオ
完全 + ログ バックアップ




基本パターン
完全バックアップ と ログ バックアップを定期的に実行
完全バックアップのみの運用に比べ、バックアップ時間が短い
時間指定の復元が可能
① 完全
バックアップ
② ログ ③ ログ ④ ログ
時間
12
バックアップ シナリオ
完全 + ログ バックアップ




基本パターン
完全バックアップ と ログ バックアップを定期的に実行
完全バックアップのみの運用に比べ、バックアップ時間が短い
時間指定の復元が可能
① 完全
バックアップ
・・・・
② ログ ③ ログ ④ ログ ⑤ ログ
時間
13
バックアップ シナリオ
完全 + ログ バックアップ




基本パターン
完全バックアップ と ログ バックアップを定期的に実行
完全バックアップのみの運用に比べ、バックアップ時間が短い
時間指定の復元が可能
① 完全
バックアップ
・・・・
② ログ ③ ログ ④ ログ ⑤ ログ
時間
14
バックアップ シナリオ
完全 + 差分 + ログ バックアップ



完全、差分、ログの 各バックアップを定期的に実行
復元するログ バックアップ数を減らせる
バックアップ および 復元時間の短縮
① 完全
バックアップ
② ログ
時間
15
バックアップ シナリオ
完全 + 差分 + ログ バックアップ



完全、差分、ログの 各バックアップを定期的に実行
復元するログ バックアップ数を減らせる
バックアップ および 復元時間の短縮
① 完全
バックアップ
② ログ ③ ログ
時間
16
バックアップ シナリオ
完全 + 差分 + ログ バックアップ



完全、差分、ログの 各バックアップを定期的に実行
復元するログ バックアップ数を減らせる
バックアップ および 復元時間の短縮
① 完全
バックアップ
② ログ ③ ログ ④ ログ
時間
17
バックアップ シナリオ
完全 + 差分 + ログ バックアップ



完全、差分、ログの 各バックアップを定期的に実行
復元するログ バックアップ数を減らせる
バックアップ および 復元時間の短縮
① 完全
バックアップ
② ログ ③ ログ ④ ログ
⑤ 差分
バックアップ
時間
18
バックアップ シナリオ
完全 + 差分 + ログ バックアップ



完全、差分、ログの 各バックアップを定期的に実行
復元するログ バックアップ数を減らせる
バックアップ および 復元時間の短縮
① 完全
バックアップ
② ログ ③ ログ ④ ログ
⑤ 差分
バックアップ
⑥ ログ
時間
19
バックアップ シナリオ
完全 + 差分 + ログ バックアップ



完全、差分、ログの 各バックアップを定期的に実行
復元するログ バックアップ数を減らせる
バックアップ および 復元時間の短縮
① 完全
バックアップ
② ログ ③ ログ ④ ログ
⑤ 差分
バックアップ
・・・・
⑥ ログ⑦ ログ
時間
20
データベース スナップショット

21
ソース データベースの読み取り専用の静的ビュー
スナップショット
スナップショット
スナップショット
データベース
データベース
データベース
①スナップショット
の作成
②書き込み時
コピー処理
③書き込み時
コピー処理
時間
復元と復旧

復元




復旧


22
退避していたバックアップを元の場所に戻す
トランザクション ログをロールフォワードする
復旧処理が完了するまでデータベースは利用不可
未コミット トランザクション をロールバック し、デー
タベース全体を整合性の取れた状態にする
復旧完了後、データベースは利用可能になる
復元時に復旧方法を指定

NORECOVERY





RECOVERY




復元すべき最新のバックアップでのみ指定
未コミットのトランザクションをロールバックする
適用後、データベースは使用可能
STANDBY



23
最新のバックアップを除くすべてのバックアップで指定
復旧プロセスを実行するまでデータベースは使用不可
未コミットのトランザクションをロールバックしない
引き続き差分やログのバックアップを適用可能
データベースの読み取りが可能
引き続き差分やログのバックアップを適用可能
UNDO ファイルを使用し復旧操作を取り消すことが可能
復元の新機能





24
データベース スナップショットからの復元
オンライン復元
段階的な復元
ページ単位の復元
RESTORE VERIFYONLY
Agenda




25
高可用性ソリューションの必要性
バックアップと復元の基本
フェールオーバー クラスタリングとは
データベース ミラーリングとは
フェールオーバー クラスタリング


ホット スタンバイ – 自動フェールオーバー
Microsoft Cluster Services (MSCS) 上に構築



障害時に、サービスをスタンバイ ノードへ移動
ノード障害を自動検出 し、フェールオーバー
HCL (Hardware Compatibility List) で認定されたハードウェアを使
用


複数のシナリオをサポート




アクティブ / パッシブ、アクティブ / アクティブ、N+1、 N+I
インスタンス単位のフェールオーバー
SQL Server 7.0 Enterprise Edition から利用可能
待機ノードを読み取り専用 DB として使用できない

26
Cluster Solutions カテゴリを参照
必要があればアクティブ / アクティブ (別インスタンス) を検討
フェールオーバー クラスタリング
クライアント
DC
192.168.10.1
仮想サーバ
10.0.0.200
10.0.0.1
192.168.10.101
Public
Private
10.0.0.2
192.168.10.102
SQL Server
C:
共有ディスク
C:
D:
NODE1
27
システムデータベース
ユーザーデータベース
NODE2
フェールオーバー クラスタリング
クライアント
DC
192.168.10.1
仮想サーバ
10.0.0.200
10.0.0.1
192.168.10.101
C:
Public
Private
10.0.0.2
192.168.10.102
共有ディスク
C:
D:
NODE1
フェールオーバー時の動作
28
システムデータベース
ユーザーデータベース
①障害検知
NODE2
フェールオーバー クラスタリング
DC
クライアント
192.168.10.1
仮想サーバ
10.0.0.200
10.0.0.1
192.168.10.101
Public
Private
10.0.0.2
192.168.10.102
SQL Server
C:
共有ディスク
C:
D:
NODE1
フェールオーバー時の動作
29
システムデータベース
ユーザーデータベース
①障害検知
②サービス再起動
NODE2
フェールオーバー クラスタリング
DC
クライアント
192.168.10.1
仮想サーバ
10.0.0.200
10.0.0.1
192.168.10.101
Public
Private
10.0.0.2
192.168.10.102
SQL Server
C:
共有ディスク
C:
D:
NODE1
フェールオーバー時の動作
30
システムデータベース
ユーザーデータベース
①障害検知
②サービス再起動
NODE2
③復旧処理
Agenda




31
高可用性ソリューションの必要性
バックアップと復元の基本
フェールオーバー クラスタリングとは
データベース ミラーリングとは
データベース ミラーリング

3つのインスタンスによりフォールト トレランスを実現

ワークロードが発生しない場合、監視サーバーと待機系インスタンスのライセンス不要
3 台のサーバー マシンで
クォーラム形成
監視サーバー
プリンシパルとミラーを常に
監視
自動フェールオーバを提供

プリンシパル


32
ミラー

DB はプリンシパルで稼動
クライアント はプリンシパルに
接続

クライアント
ミラーは常に
プリンシパルと同期
待機サーバーとしての役割
データベース ミラーリング
高可用性モード
SQL Server
プリンシパル
⑥
データ
②
監視サーバー
ログ
② ④
ミラー
33
SQL Server
クライアント
データ
③
ログ
データベース ミラーリング
高可用性モード
SQL Server
プリンシパル
⑥
データ
②
監視サーバー
ログ
② ④
ミラー
SQL Server
クライアント
データ
③
ログ
時間
34
フェールオーバー時の動作
①障害検知
データベース ミラーリング
高可用性モード
SQL Server
プリンシパル
⑥
データ
②
監視サーバー
ログ
② ④
ミラー
SQL Server
クライアント
データ
③
ログ
時間
35
フェールオーバー時の動作
①障害検知
②復旧処理
データベースミラーリング
透過的なクライアント再接続の実現

クライアントは自動リダイレクト



クライアント ライブラリがプリンシパル と ミラー サーバーを認識
プリンシパル への初回接続時にミラー名をキャッシュ
クライアントからの再接続時



接続文字列のパラメータ

36
プリンシパル が利用可能であれば接続
利用不可能な場合は、クライアントは ミラーへ自動的にリダイレクト
(例) strCon = “Data Source=PrincipalSrv;Failover
Partner=MirroSrv; ...”;
SQL Server Always On Technologies

物理的障害




論理的障害



計画停止



37

フェールオーバークラスタリング
データベースミラーリング
ログ配布
トランザクションレプリケーション
データベーススナップショット
オンライン復元
高速復旧
メモリの自動チューニング
ディスク領域の自己管理
動的なハードウェア設定
オンラインインデックス操作
データ パーティション
38
更に詳しく知りたい方は・・・
learn more
【SQL Server 2005 無償 1日セミナー】
http://www.microsoft.com/japan/sql/techinfo/seminar.mspx
SQL Server
SQL Server
SQL Server
SQL Server
SQL Server
SQL Server
SQL Server
2005 技術概要 (エンタープライズ データ マネジメント編)
2005 技術概要 (データ分析・データ活用編)
2005 技術概要 (データベース アプリケーション開発編)
2005 ADO.NET 2.0 プログラミング
2005サイジングとパフォーマンス チューニング
7.0 / 2000 から SQL Server 2005 への移行とアップグレード
Migration Assistant を活用した Oracle から SQL Server 2005 への移行
【SQL Server 2005 有償ハンズオン トレーニング】
http://learningnet.nri.co.jp/classes/courselistsol.asp#sql
【書籍】
MCP 教科書 SQL Server 2005 70-431 NRI ラーニングネットワーク 沖 要知著 翔泳社刊
39
© 2006 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
40