システムを構築する際には、運用だけでなく障害発生時の復旧方法も重要です。本記事では、Oracle Databaseを例に、データベースのリストアの基本について解説します。
リストアの目的
基本的にシステムで扱うデータはデータベースに保存しますが、さまざまな要因でデータを損失してしまうケースがあります。例えば、以下が挙げられます。
・ディスクに障害が発生し、保存していたデータが損失する
・ユーザーが誤ってデータを削除してしまう
・外部からの攻撃を受け、データが破壊される
このような事態に備え、システム構築時点で、障害時の対策としてバックアップおよびリストアのテストは必ず行っておきましょう。それにより、迅速に失われたデータを障害発生直前まで復旧し、サービスを再開させることができます。
リストアの基本:完全リカバリ
バックアップからデータを戻す作業をリストアと呼びます。厳密には、データを戻す方法としてリストア(完全リカバリ)とリカバリ(不完全リカバリ)があります。
障害発生時点まで復旧することを完全リカバリと呼びます。具体的には、フルバックアップおよび差分バックアップ、バックアップ実施以降のログ(アーカイブログ、REDOログ)からリカバリを行います。
図1.完全リカバリ
リストアの基本:不完全リカバリ
指定した時点の状態まで復旧させることを不完全リカバリと呼びます。具体的には、フルバックアップと指定した時点までの差分バックアップまたはアーカイブログファイルを使用して復旧します。
図2.不完全リカバリ
まとめ
本記事では、データベースのリストアに関する基本的な概念と手法を解説しました。
データの損失はサービス提供に大きな影響を及ぼすため、障害発生時に迅速に対応できるよう、システム構築時点でバックアップとリストアの手順を確立し、定期的にテストを行うことが重要です。しっかりとした対策を講じることで、サービスの安定運用を確保しましょう。
- カテゴリ:
- キーワード: