データベース障害復旧の基礎 「バックアップファイル」「変更履歴」の仕組みを理解するゼロからのリレーショナルデータベース入門(9)(1/3 ページ)

本連載は、企業の成長に不可欠な「データ活用」を推進していくために必要なデータ基盤の基礎を“あらためて”解説していきます。今回は、「データベース障害対策」の基礎を解説します。【更新版】

» 2017年04月27日 05時00分 公開
[坂田素道株式会社アシスト]

連載バックナンバー

 データベースのデータはさまざまな業務で利用されています。データベースに障害が発生すると多くの業務やサービスが止まり、ビジネスに大きな影響を及ぼしてしまいます。しかし、どのようなデータベースシステムであれ、障害が発生する可能性はゼロではありません。このリスクを最小限にとどめるためには、「障害は起こり得る」と想定した対策が必要です。

 そこで今回は、データベース障害対策の基礎として、障害の備えと、復旧(リカバリー)の仕組みをおさらいします。

データベース障害の種類

 データベースシステムには、以下のような障害が発生する可能性があります。

  • サーバ障害によるメモリ上のデータ損失
  • ネットワーク障害によるトランザクションの異常終了
  • ユーザーの誤操作によるデータ損失
  • 自然災害による物理的な破損 など

 このように、データベースシステムに発生し得る障害と、その原因や影響範囲は多岐にわたります。本稿では、障害の中でも影響の大きい「データベース構成ファイルが破損した障害」を想定して説明していきます。

データベースファイル障害の復旧対策に必要なデータ

 データベースの構成ファイルが破損すると、ファイルに新しくデータを書き込めなくなるだけでなく、格納されていたデータも失われてしまい、大変深刻な被害を受けます。

 しかし、「備え」があれば、この障害からデータを復旧することが可能です。障害が発生してからでは遅いため、データベースが正常に稼働しているときに、リカバリーに備えた準備をしておくことが重要です。

 正しくリカバリーするには、以下の2つのデータが必要です。

  1. バックアップファイル
  2. バックアップファイル取得後の変更履歴

(1)バックアップファイル

 バックアップファイルは、「データベースを構成するファイル」のコピーです。

 データベースを構成するファイルが破損した場合、破損前の正常なファイル(=バックアップファイル)と置き換えることでリカバリーを行います。このバックアップファイルを、「システムが正常な状態のとき」に取っておくのが基礎中の基礎となる対策です(図1)。

photo 図1 データベースの物理ファイルとバックアップファイル

 また、バックアップファイルは定期的に取得するようにします。バックアップファイルがあまりにも古いと、後述する変更履歴が多くなり、ファイルを置き換えたあとリカバリー作業に時間がかかってしまうことがあるためです。

(2)バックアップファイル取得後の変更履歴

 バックアップファイルは、“過去のある時点”のコピーとなります。そのためにバックアップ以降に変更されたデータは含まれません。

 しかし障害が発生したら、「障害発生直前」までリカバリーしたいでしょう。そこで、バックアップ取得から障害までの変更履歴を履歴として記録しておくのです。障害によってデータが失われてしまっても、残っている履歴で変更操作を再実行することによってデータを復旧できます(図2)。

photo 図2 バックアップ後の変更履歴は別のファイルとして取得が必要
       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。