Oracle Recovery Manager(RMAN)は、データベースのバックアップとリカバリを管理するための強力な標準ツールです。運用要件に合わせて「圧縮バックアップ」でストレージを節約したり、「イメージコピー」で復旧を高速化したりと、柔軟な構成が可能です。
本記事では、Backupset(バックアップセット)、Compressed Backupset(圧縮バックアップセット)、Copy(イメージコピー) の違いに加え、運用の自動化に欠かせない CONFIGURE コマンド による設定方法を詳しく解説します。
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?
結論:バックアップ方式の選び方
バックアップ方式は、ストレージ容量・CPUリソース・リカバリ目標時間(RTO)のバランスで決定します。
- ストレージ容量を最優先:
Compressed Backupset(圧縮バックアップセット) - リカバリ速度を最優先:
Copy(イメージコピー) - 標準的な運用:
Backupset(通常のバックアップセット)
1. CONFIGURE コマンドによる基本設定
CONFIGURE コマンドを使用すると、バックアップのデフォルト動作を永続的に設定できます。毎回コマンドラインで指定する手間が省け、運用の標準化に役立ちます。
デフォルトのバックアップ形式を設定する
# デフォルトを「圧縮バックアップセット」に設定
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET;
# デフォルトを「イメージコピー」に設定
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COPY;
# デフォルトを「通常のバックアップセット」に戻す
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET;
設定の確認と初期化
# 現在の全設定を表示する
RMAN> SHOW ALL;
# 設定をインストール時の既定値(デフォルト)に戻す
RMAN> CONFIGURE DEVICE TYPE DISK CLEAR;
2. RMANのバックアップ方式(Backupset / Copy)
RMANには大きく分けて「バックアップセット」と「イメージコピー」の2つの形式があります。
2.1 Backupset(バックアップセット)
BACKUP コマンドで作成されるRMAN独自の論理的なバックアップ形式です。
- 仕組み: 複数のデータファイルを1つ以上のバックアップピース(物理ファイル)にまとめます。
- 特徴:
- 未使用ブロックのスキップ: データが書き込まれていない領域を飛ばして保存するため、実サイズより小さくなります。
- 独自形式: RMANを介してのみリストア可能で、OSコマンドで直接ファイルを扱うことはできません。
実行例:バックアップセットの取得
# 基本的なデータベースバックアップの実行
RMAN> BACKUP DATABASE;
# 保存先ディレクトリとファイル名を指定して実行
RMAN> BACKUP DATABASE FORMAT '/backup/%d_%T_%U.bkp';
2.2 Compressed Backupset(圧縮バックアップセット)
バックアップセットに対し、さらにRMANレベルでバイナリ圧縮をかける形式です。
- 特徴:
- ストレージの大幅削減: 未使用ブロックのスキップに加え、データ自体を強力に圧縮します。
- CPU負荷: 圧縮処理により、バックアップ実行中のCPU負荷が増加します。
実行例:圧縮バックアップの実行
# データベース全体を圧縮してバックアップ
RMAN> BACKUP AS COMPRESSED BACKUPSET DATABASE;
# 圧縮アルゴリズム(MEDIUM)を指定してバックアップ
RMAN> BACKUP AS COMPRESSED BACKUPSET
DATABASE
FORMAT '/backup/%d_%T_%U.bkp'
COMPRESSED BACKUPSET ALGORITHM 'MEDIUM';
注意:
LOW,MEDIUM,HIGHの圧縮レベルを使用するには、Oracle Advanced Compression オプションのライセンスが必要です。
2.3 Copy(イメージコピー)
データファイルをOSのコピーと同じ形式でそのまま複製する方式です。
- 特徴:
- 高速リカバリ: ファイル形式がそのままなので、障害時にファイルを置き換える(SWITCH)だけで復旧可能です。
- 容量消費: 未使用ブロックもすべてコピーするため、本番データベースと同じ容量のストレージを消費します。
実行例:イメージコピーの取得
# データベース全体のイメージコピーを取得
RMAN> BACKUP AS COPY DATABASE FORMAT '/backup/%d_%T_%U.dbf';
# 特定の表領域のみをコピー
RMAN> BACKUP AS COPY TABLESPACE users FORMAT '/backup/users_%T.dbf';
# リカバリ時にデータファイルをイメージコピーへ切り替える(高速復旧)
RMAN> SWITCH DATABASE TO COPY;
3. 圧縮アルゴリズムの種類
Enterprise Edition では、以下の圧縮レベルを選択可能です。
| 圧縮方式 | 説明 |
| BASIC | デフォルト。追加ライセンスなしで利用可能(EE)。 |
| LOW | 圧縮率は低いが、CPU負荷が最も軽い。 |
| MEDIUM | 圧縮率とパフォーマンスのバランスが良い(推奨)。 |
| HIGH | 最も圧縮されるが、CPU負荷が非常に高い。 |
4. 各方式の比較表
運用の目的に合わせて、最適な方式を選択してください。
| 項目 | Backupset | Compressed Backupset | Copy (イメージコピー) |
| バックアップサイズ | 小さい | 最小 | 大きい |
| 未使用ブロックのスキップ | あり | あり | なし |
| リカバリ速度 | 普通 | 普通 | 高速 |
| OSでの直接閲覧 | 不可 | 不可 | 可能 |
| CPU負荷 | 低 | 高 | 低 |
運用・セキュリティ上の注意
- 影響範囲:
CONFIGUREでデフォルトを圧縮に設定すると、すべてのバックアップジョブのCPU負荷に影響します。 - リスク: 圧縮バックアップはCPUを消費するため、バックアップウィンドウ(実行時間帯)が業務ピークと重ならないよう注意してください。
- 戻し方: 設定を元に戻す際は
CONFIGURE ... CLEARを使用するのが最も確実です。
FAQ:よくある質問
Q:CONFIGUREで設定した内容は再起動後も有効ですか?
A:はい、設定は制御ファイル(またはリカバリ・カタログ)に保存されるため、RMANやインスタンスを再起動しても維持されます。
Q:SE2(Standard Edition 2)でも圧縮バックアップは使えますか?
A:はい、AS COMPRESSED BACKUPSET(BASIC相当)が利用可能です。ただし、MEDIUM以上のアルゴリズム指定にはEnterprise Editionとオプションライセンスが必要です。
Q:イメージコピーから直接データベースを起動できますか?
A:SWITCH コマンドを使用することで、バックアップファイルをそのまま本番ファイルとして認識させ、即座にリカバリを完了させることが可能です。
まとめ
- CONFIGURE コマンドでバックアップの既定値を管理し、運用を自動化する。
- Backupset は標準的な形式。未使用領域を自動で除外する。
- Compressed Backupset はストレージを節約するがCPU負荷が高い。
- Copy は「即時復旧」を重視する場合に選択する。
本記事は Oracle Database 19c を対象に解説します(他バージョンは画面や既定値が異なる場合があります)。
[参考]
Oracle Database バックアップおよびリカバリ・ユーザーズ・ガイド 19c
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?



コメント