2章 バックアップ取得
本章ではデータベースのバックアップの取得について考えていきます。
今回の内容はRMANを使用したバックアップについてです。
バックアップ取得の種類
メディア障害があった場合の備えとしてバックアップの取得方法を見ていきましょう。
Oracleデータベースのバックアップを取得できるツールは以下のようなものがあります。
・RMAN
・ストレージコピー機能
・OSコマンド
・エクスポート(expdp)
上記のような方法でバックアップを取得することが出来ます。
どの方法で取得するかはそのシステムの特性や要件によって異なります。
ではそれぞれのバックアップの取得方法の特徴について確認していきましょう。
RMAN
RMANはOracleが無償で提供しているバックアップリカバリ用のツールです。
簡単なコマンドでバックアップを取得、リカバリを実施することが出来ます。
また色々な機能が備わっており、差分バックアップやパラレルプロセス実行、
バックアップを複数ファイルに分割して作成したりすることも出来ます。
ストレージコピー機能
ストレージに備わっているコピー機能を使用することで、データベース領域の
バックアップを取得することができます。スナップショットやミラーなど
各ストレージによって呼び名があります。通常どのバックアップ方法よりも高速です。
コピーのタイミングでBEGIN,ENDコマンドをデータベース上で実行する必要があります。
OSコマンド
OSコマンドのcpコマンドやddコマンドを使用して、データファイルをコピーすることで
バックアップを取得することが出来ます。
こちらもコピーのタイミングでBEGIN,ENDコマンドをデータベース上で実行する必要があります。
エクスポート(expdp)
エクスポートは前者のバックアップ方式とは少し異なりますが、エクスポートを使用してバックアップを取得することが出来ます。
バックアップエクスポートはデータベース全体をバックアップとしてダンプファイルを作成することができます。
ただし、前者のバックアップは完全リカバリを行うことが出来ますが、エクスポートは直前の復旧は
出来なく、取得した時点にしか戻せません。前者と比較し、論理バックアップである為、低速です。
上記のバックアップ方法がありますが、そのシステムの特定に合わせてバックアップの方法を決めてください。
バックアップの対象ファイル
それではデータベースのバックアップを取得して行きましょう。
Oracleデータベースのバックアップは以下のファイルを取得します。
全データファイル
制御ファイル
初期化パラメータファイル(オプション)
アーカイブログファイル(オプション)
データファイルは必ずバックアップが必要です。制御ファイルはデータベース構造の情報を格納するファイルである為、表領域の構造が変更されないかぎりは必須ではないのですが、制御ファイルが破損する可能性もある為、取得しておいたほうが良いでしょう。
初期化パラメータファイルも一度取得しておけば、定期的に取得する必要はありませんが、パラメータ変更を行った際には再度取得します。
アーカイブログが破損してもデータベースは停止しません。そのため、必須ではありませんがリカバリを実施するときにアーカイブログがなかった場合、復旧ができなくなる為、注意が必要です。
REDOログのコピーがアーカイブログである為、REDOログのバックアップは不要です。
バックアップタイプ
バックアップは大きく2つの取得方法があります。
・オンラインバックアップ
・オフラインバックアップ
オンラインバックアップはデータベースが起動中に取得するバックアップです。
オフラインバックアップはデータベースが停止している状態でバックアップを取得します。
オンラインバックアップ
オンラインバックアップは24時間停止できないデータベースなどには有効なバックアップ方法です。
ただし、更新処理が行われている最中にバックアップを取得する為、そのバックアップファイルは一貫性が取れない状態となっています。そのため、非一貫性バックアップとも呼ばれ、そのバックアップを使用する際には、ファイルの一貫性をとる為、リカバリが必要になります。
オンラインバックアップの取得はNOARCHIVELOGモードでは取得できません。バックアップファイルは一貫性をとる為、
リカバリを実行する必要がありますが、アーカイブログファイルがないとリカバリが出来ないからです。
オフラインバックアップ
オフラインバックアップはデータベースを停止して取得するバックアップです。
メリットとしては、一貫性バックアップが取得できます。一貫性バックアップの為、リストアするとすぐに起動が出来ます。
もっとも良いバックアップはオフラインバックアップです。しかしデータベースは24時間停止できないシステムも多々ある為、
基本的にはオンラインバックアップが一般的には多いです。
バックアップファイルの種類
RMANで取得するバックアップのファイルのタイプがあります。
・バックアップ・セット
・イメージ・コピー
バックアップセットとは複数のデータファイルや制御ファイルをまとめて、1つのファイルにまとめて取得します。
イメージコピーは1つのデータファイルを1つずつコピーして取得します。
例えば10個のデータファイルをバックアップするとき、バックアップセットでは1つのバックアップファイルを作成しますが、
イメージコピーの場合はバックアップファイルは10個作成されます。
またバックアップセットは未使用ブロックはバックアップしない特徴があります。
例えばUSER表領域が100GBで割り当てられており、その使用率が10%の場合、使用されている10GBのバックアップを取得します。
イメージコピーの場合は、100GBで取得されます。
この機能を
「未使用ブロックの圧縮」と呼びます。
以下、バックアップセットとイメージコピーのメリットデメリットとなります。
タイプ |
イメージコピー
|
バックアップセット
|
メリット |
OSコマンドでもリストア可能 |
増分バックアップ可能 圧縮バックアップ 未使用ブロック圧縮 |
デメリット |
バックアップサイズが大きい 保存先はディスクのみ |
リストアはRMANコマンドのみ |
基本的にRMANでバックアップ取得する場合は、バックアップセットのほうがメリットが大きいです。
本章は以上となります。バックアップを取得する為の基本内容をご紹介してきました。
次章からは実際のコマンドを確認していきます。