ネットワーク環境内の全てのデータベースはディザスタ・リカバリのためにバックアップする必要があります。Oracle Recovery Manager (RMAN)は、バックアップを自動化するためのOracle データベース・エンジンを備えたオプションのアプリケーションです。データベース・エンジンを管理する Oracle チームによって構築されているため、多くの管理者にとって推奨されるバックアップ方法となります。
Oracle Recovery Manager とは
データベース管理者は、セキュリティとコンプライアンスのためにビジネスデータベースを一貫してバックアップする方法を見つける必要があります。データベース・エンジンに障害が発生した場合や、イベントによってリカバリが必要なデータが破損した場合、バックアップ・スケジュールが 1 回しかない場合、事業継続性に影響が及ぶ可能性があります。RMANツールは、データベース、そのデータ、データを保存するオブジェクト(表やビューなど)のスナップショットを自動的に取得します。
RMAN ツールでは、フルバックアップまたは増分バックアップが実行されます。データベース管理者は、セキュリティのためにバックアップを暗号化するように構成できます。RMAN は、いくつかのバックアップ戦略をサポートしており、管理者は、ビジネス要件、コンプライアンスの懸念、リカバリオプションをサポートするようにツールを設定できます。
Oracle RMANの仕組み:バックアップ
バックアップ・プロセスには、バックアップが必要なソース・データベースと、バックアップ・ファイルを保存するためのターゲット・ロケーションが必要です。RMAN エージェントは、サーバー上で実行され、管理者の設定を保存して、いつ、どこでバックアップが発生するかを決定します。また、管理者は保持期間を設定して、一定期間バックアップを保持できます。
管理者が RMAN を設定すると、バックアップ手順がアプリケーションで設定された頻度を使用して自動的にトリガーされます。データのスナップショットを取得し、バックアップ場所に保存します。場所は、ローカル・ドライブ、ネットワーク・ドライブ、外部デバイスなどです。管理者は、いつでも手動でスナップショットを取得できます。
Oracle RMANの仕組み:リカバリ
RMAN は、フラッシュバックとメディア・リカバリの 2 種類のリカバリ方法をサポートしています。Flashback リカバリは、特定の時点に遡り、データをリストアします。管理者は、ユーザーが誤ってデータを削除したり、まれなイベントによって特定のデータが破損した場合に、この方法を使用します。
データベース・ファイル全体または大量の破損データをリストアするには、メディア・リカバリによってバックアップの場所から本番サーバーにファイルがリストアされます。メディア・リカバリの利点は、管理者がデータベース・エンジンを停止し、実稼働環境にダウンタイムを発生させる必要がないことです。ファイルが破損したり、本番メディアに障害が発生した場合によく使用されます。
最も一般的な10 個の RMAN バックアップ・コマンド
RMAN には、バックアップの構成と実行のためのコマンドライン・ステートメントがいくつかあります。次のリストは、最もよく使用される 10 個のコマンドと例を示しています。
完全なデータベース・バックアップの実行
RMAN> BACKUP DATABASE;
また、次のコマンドを使用して、データベースを全てのログでバックアップすることもできます。
RMAN> BACKUP DATABASE PLUS ARCHIVELOG;
増分バックアップの実行
RMAN> BACKUP incremental level 0 DATABASE PLUS ARCHIVELOG;
レベル 0 バックアップは、増分バックアップの出発点となります。増分バックアップは、前回のバックアップ以降に変更されたデータのみのコピーを取ります。これにより、全てのバックアップにフルコピーを使用する代わりに、時間とスペースを節約できます。この例では、ログもバックアップされますが、フルバックアップと同様に、コマンドのオプションの部分です。
バックアップ・ファイルのフォーマット
バックアップ・ファイルをフォーマットすることで、管理者は各ファイルに対して一意の名前を作成し、リカバリ・プロセス中に迅速に認識することができます。Oracle は、%U プレースホルダーを使用して各ファイルに対して一意の名前を生成します。次の記述は、各ファイルのディレクトリとファイル名を決定します。
RMAN> BACKUP DATABASE FORMAT “/dbbackup/backup_%U”;
テーブルのみをバックアップする
RMAN> BACKUP TABLESPACE customer to destination ‘/dbbackup/’;
データファイルのバックアップ
データファイルは、Oracle 独自のストレージ形式を使用してデータを保存します。次のコマンドは、デバイス障害が発生した場合にリカバリのためにこれらのファイルをバックアップします。
RMAN> BACKUP DATAFILE ‘/dboracle/customer.dbf’ to destination ‘/dbbackup/’;
フルバックアップからデータベースをリストア
バックアップは自動的に /backup/rman ディレクトリに保存されます。フルバックアップからデータベースをリストアするには、次のコマンドを使用します。
RMAN> RESTORE DATABASE;
特定のテーブルをリストアする
RMAN> RESTORE TABLESPACE customer;
特定のデータファイルをリストアする
RMAN> RESTORE DATAFILE ‘/dboracle/customer.dbf’;
アーカイブログの宛先ディレクトリを設定する
RMAN> SET ARCHIVELOG destination to ‘/archives/’;
全てのアーカイブログをリストア
RMAN> RESTORE ARCHIVELOG ALL;
Oracle RMAN 対 バックアップのためのエクスポート
データベースのバックアップはデータのエクスポートに似ていますが、ディザスタ・リカバリにはバックアップが必要であり、事業継続性を確保するためには頻繁に実行する必要があります。バックアップは、少なくとも2週間は確保し、保持する必要があります。アーカイブされたデータはより長く保持する必要がありますが、メディアの障害、データの破損、またはデータが誤って削除された場合は、バックアップを常に利用可能にする必要があります。
データをエクスポートするには、データのコピーを取り、別の場所に格納しますが、Oracle データベースからのデータを別のユーザーに送信するか、別の環境に移動する必要がある場合に使用されます。例えば、エクスポートされたデータを使用して、サードパーティの MySQL データベースに情報をインポートできます。エクスポートされるほとんどのデータは、特定のテーブルのデータや特定の検索条件に一致するデータなど、Oracle データベースからのデータのサブセットです。
Oracle RMAN 対 リカバリのためのエクスポート
RMAN には、バックアップとリカバリに固有の機能が含まれています。エージェントにより、管理者は特定の時間に実行し、データを暗号化し、必要に応じてファイルやテーブルをリストアするようにソフトウェアを設定できます。セキュリティ・イベントや本番運用の障害が発生した場合にデータを保存するには、事業継続性において重要な要素となります。
エクスポートされたデータは、データ損失時に便利ですが、煩雑で信頼性がありません。RMAN のバックアップ/リストア・プロセスは、バックアップを整理して保護し、データをできるだけ短時間でリカバリするように設計されています。エクスポートされたデータは最後の手段として使用できますが、ファイルからデータを復元することは推奨されません。
Oracle RMANを利用するメリット
Oracle RMAN ツールには、データベース管理者にとって有益なツールとなるいくつかの機能があります。これらの機能は他のアプリケーションには存在せず、ほとんどのデータベース・アプリケーションは特定のベンダー向けに構築されています。Oracle RMANツールは、Oracle データベース専用に設計されており、データベース・エンジンとライセンスの購入時に含まれます。
次のようなメリットがあります。
- スケジュール済みまたは手動バックアップ:管理者は、RMAN からバックアップ戦略を構築するか、全てのデータのスナップショットを手動で作成できます。
- アーカイブされた再実行ログ:データベースの破損データに対する更新では、バックアップに一貫性がない場合、アーカイブを使用して変更をロールバックし、データをリストアすることができます。
- フラッシュ・リカバリ:Oracleは、データのコピーとアーカイブログを特定のディレクトリに保存します。フラッシュ・リカバリ・ファイルを使用することで、データを迅速にリストアし、ダウンタイムを削減できます。
- バックアップ暗号化:バックアップを暗号化することで、機密性の高いビジネス情報にセキュリティの層が加わり、多くのビジネスにとってコンプライアンス要件となります。
Oracle RMAN の欠点
管理者にとって、RMAN はいくつかの欠点があるかもしれません。主なものは、複雑さと、全ての機能の使用方法を学ぶことです。管理者は、アプリケーションに慣れていない人にとって、RMAN には大きな学習曲線があると報告しています。増分バックアップの構築には時間がかかりますが、構成が明らかになると、RMAN は介入なしで自動的に実行されます。
RMAN の用途
各組織は、重要なシステムごとにバックアップ戦略を策定する必要があります。データベースは、ビジネスの生産性に必要な重要なリソースであるため、優先順位を付ける必要があります。サーバー障害、データ破損、マルウェア攻撃、ランサムウェア攻撃、データの偶発的な削除後にデータベースがデータを取得できなくなった場合は、リカバリのためにバックアップが必要です。ランサムウェアを含む一部のイベントでは、バックアップの使用が唯一のリカバリ方法です。
定期的なバックアップは、1 日を通じて変化するデータの量に応じて行われます。組織は、イベントが事業継続性と収益に影響を与える前に、どれだけのデータが失われるかを決定する必要があります。この情報を使用して、バックアップ頻度のベースラインを作成します。
RMAN リカバリ・オプションは頻繁に必要ではありませんが、インシデント後にビジネス環境を元の状態に戻す方法として必要です。例えば、ランサムウェアがデータベース・ファイルを暗号化した場合、ほとんどのシナリオでファイルを復号化することはできません。RMAN は、バックアップからデータを復元することで、データのリカバリに使用できます。