Loading...

We've detected that your browser language is Chinese. Would you like to visit our Chinese website? [ Dismiss ]
By: Dylan

Oracleデータベースのバックアップが不可欠な理由

Oracleを活用したシステムを運用する企業にとって、Oracleのバックアップ方針は必要不可欠です。ハードウェア障害、人為的ミス、ランサムウェアによるデータ損失は、復旧時間の損失や業務への多大な影響、数百万規模の損失を引き起こす可能性があります。

本ガイドでは3種類のOracleバックアップ手法を解説します。コマンドラインのRMAN、GUIツールのSQL Developer、自動化に対応したエンタープライズ向けOracleデータ保護ソリューションi2Backupです。下記の手法はOracle 19c、21c、23aiといった大半のOracleバージョンに対応可能です。

Backup Oracle Database

手法1 コマンドライン(RMAN)によるOracleバックアップ

RMANはOracle純正のユーティリティで、データベースサーバーと直接連携しバックアップを管理します。従来の手動管理型手法と比較し、下記のメリットを備えています。

  • バックアップ自動化:複雑なバックアップ・リカバリ手順を自動化。バックアップファイル名、保存先、保存期間ポリシーを自動制御し、DBAの作業負担を軽減します。
  • 増分バックアップ:単なるファイルコピーと異なり、前回バックアップ後に変更されたデータブロックのみを保存するブロック単位の増分バックアップを実行可能です。
  • 保存期間ポリシー:保存期間または世代数に基づき、古いバックアップを自動削除します。
  • 完全性チェック:バックアップ実行中に物理・論理的なブロック破損を検知。各ブロックのチェックサムを計算し、不一致が発生した場合即時にアラートを出力します。

下記手順に沿って、RMANコマンドによるOracleバックアップの実行方法を確認します。

ヒントOracleデータベースが稼働した状態でバックアップを実施するホットバックアップを行う場合は、データベースがARCHIVELOGモードに設定されている必要があります。
SYSDBA権限でSQL*Plusにログイン:sqlplus / as sysdba
「archive log list」コマンドを実行
「Database log mode」がNo Archive Modeと表示される場合は設定を有効化する必要があります。データベースを再起動し、ALTER DATABASE ARCHIVELOGコマンドでARCHIVELOGモードを有効にします。

手順1. RMANへ接続

ターミナルまたはコマンドプロンプトを開き、対象データベースに接続します。

rman

RMAN > CONNECT TARGET /

パスワードを入力すると、OS認証を利用しローカルのデータベースインスタンスに接続できます。

手順2. 基本的なバックアップ設定

初回バックアップ実行前に、保存期間ポリシーを設定し、制御ファイルの自動バックアップを有効化することがベストプラクティスです。

保存期間ポリシー設定:バックアップを7日間保持

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;

制御ファイル自動バックアップを有効化:

CONFIGURE CONTROLFILE AUTOBACKUP ON;

バックアップセットの圧縮を有効化:

CONFIGURE DEVICE TYPE DISK/sbt BACKUP TYPE TO COMPRESSED BACKUPSET;

設定完了後、SHOW ALLコマンドで全設定内容を確認可能です。

手順3. Oracleデータベースのフルバックアップ実行

下記コマンドでフルデータベースバックアップを実行し、用途に合わせて選択してください。

フルバックアップを実行するには下記コマンドを実行します。

BACKUP DATABASE;

Backup Oracle Database RMAN

補足事項:✎…
データベース全体とアーカイブREDOログをまとめてバックアップする場合:BACKUP DATABASE PLUS ARCHIVELOG;
特定の表領域のみバックアップする場合:BACKUP AS BACKUPSET TABLESPACE;

手順4. 増分バックアップを実行

毎回フルバックアップを実行する必要はありません。変更データのみを保存する増分バックアップには下記コマンドを使用します。

レベル0(基底バックアップ):使用中の全ブロックを対象とした完全イメージ

BACKUP INCREMENTAL LEVEL 0 DATABASE;

レベル1(差分増分):直前のレベル0またはレベル1バックアップ以降に変更されたブロックのみをバックアップ

BACKUP INCREMENTAL LEVEL 1 DATABASE;

手順5:バックアップの検証

下記コマンドですべてのバックアップセットを参照し、利用可能な状態か確認します。

LIST BACKUP SUMMARY;

— またはディスク上にファイルが物理的に存在するか確認

CROSSCHECK BACKUP;

ヒント:これらのコマンドを.sh(Linux)または.bat(Windows)スクリプトにまとめ、Crontabまたはタスクスケジューラーで定期実行することで、毎晩自動的にバックアップ処理を実行できます。

手法2 SQL DeveloperによるOracleデータベースバックアップ

大規模災害復旧用途にはRMANが適していますが、開発者やアナリストにはSQL Developerを利用したバックアップが好まれます。本手法は論理バックアップであり、データとメタデータをSQLスクリプトまたはダンプファイルとして出力します。

テーブル変更前に特定のテーブルを退避したり、本番スキーマのデータをローカルの検証環境へ移行したりする場面に最適です。

手順1. データベースエクスポートウィザードを起動

Oracle SQL Developerを起動しデータベースに接続後、上部メニューより「ツール」>「接続のエクスポート…」を選択します。

Export Connection Oracle SQL Server

手順2. エクスポート設定を構成

「エクスポートウィザード」画面が表示されます。信頼性の高いバックアップを作成するため、下記の通り設定します。

  • 接続:バックアップ対象のデータベース接続を選択
  • DDLのエクスポート:テーブル構造(CREATE文)をバックアップする場合はチェックを有効
  • データのエクスポート:テーブル内の実データを保存する場合はチェックを有効
  • フォーマット:標準SQL文を記載した.sqlファイルを作成する場合は「insert」、大容量データを扱う場合は「loader」を選択
  • 保存先:「単一ファイル」を選択し、任意のバックアップ保存先を指定

手順3. バックアップ対象オブジェクトを選択

必ずしもデータベース全体をバックアップする必要はありません。エクスポート対象種別画面にて下記項目のON/OFFを切り替えられます。

  • テーブル
  • ビュー
  • インデックス
  • 制約
  • ストアドプロシージャ/トリガー

手順4. データフィルターを指定(任意)

一部のデータのみを出力したい場合(例:2026年のデータに限定)、データオブジェクト設定画面でテーブルにWHERE句を追加可能です。

手順5. 確認して実行

最終画面に設定内容の概要が表示されます。「完了」をクリックするとSQL Developerがエクスポート処理を実行し、オブジェクトを復元するためのロジックとデータを格納したファイルがローカルに生成されます。

手法3 i2BackupによるOracleデータベースバックアップ(推奨)

RMANとSQL Developerは有効な手動ツールですが、現代の企業環境では集中管理・自動化・スケーラブルな運用が求められます。その課題に対応するのがInfo2softの専用ソリューションi2Backupです。

i2Backupは専門的なデータバックアップソリューションです。管理者はすべてのOracleデータベース(各種テーブル、CDB・PDB、アーカイブログ、制御ファイル、パラメータファイルを含む)を一元的にバックアップできます。

事業規模が拡大し、コマンドラインスクリプトによる手動Oracleバックアップの管理に多大な工数がかかる場合、また厳格なOracleバックアップのコンプライアンス・セキュリティ要件に対応したい場合、i2Backupは手動ツールでは実現困難な自動運用と安心感を提供します。

i2Backupの主な機能

  • 多彩なアーキテクチャに対応:スタンドアロンのOracleインスタンスからOracle RAC、ADGといった複雑なクラスタ環境までネイティブに対応。
  • 設定後放置可能な自動化ワークフロー:管理者が保存ルールとスケジュール(1時間毎、毎週、毎月など)を定義すると、システムが古いバックアップを自動削除し、ストレージコストを最適化します。
  • Webによる集中管理:複数サーバー上の個別スクリプトを管理する代わりに、単一のB/Sダッシ�ボードから全データベースのバックアップ監視・スケジューリングが可能。
  • ブロック単位変更追跡:RMANの増分バックアップ同様、ブロックレベルで変更箇所を追跡し、バックアップ時間とストレージ消費量を大幅に削減。
  • マルチ保存先対応:ローカルディスク、テープライブラリ、NAS、S3互換クラウドストレージにOracleバックアップを保存可能で、3-2-1バックアップルールに準拠した運用を実現。
  • イミュータブルバックアップ(ランサムウェア対策:WORM(一度書き込み読み取り専用)対応ストレージと連携し、Oracleバックアップファイルを改変・削除不可能な状態に維持、ランサムウェアによる被害を防止。

i2Backupを利用したOracleバックアップ手順:

手順1. 下記ボタンをクリック、またはInfo2soft無料トライアルページにアクセスし、60日間の無料トライアルを申し込みます。Info2soft技術サポートチームが環境への導入を支援いたします。

60日間無料トライアル
安全にダウンロード

手順2. ダッシュボード左側メニューの「バックアップ&リストア」>「アプリケーション保護」>「バックアップルール」を選択。「新規作成」よりバックアップルールを作成し、名称を設定後、ルール種別に「Oracle RAC」を選択します。

basic parameters i2backup backup oracle

手順3. 「クライアント」と「バックアップ対象」を選択します。

backup client and target i2Backup backup Oracle

手順4. 画面の指示に従い、バックアップ対象コンテンツと実行スケジュールを設定します。

Backup content and schedule i2Backup backup oracle

補足:スケジュール設定時、フルバックアップ・増分バックアップ・差分バックアップを毎時・毎日・毎週・毎年などの周期で実行するよう設定可能です。用途に応じてデータ保存ルールを定義できます。

手順5. 「詳細設定」画面にて「圧縮」「暗号化」「帯域制限」を構成後、設定を確定しタスクを登録します。

compress encryption backup oracle i2backup

Oracleバックアップからリストアを実行する際は「バックアップ&リストア」>「アプリケーション保護」>「リカバリタスク」より新規リカバリタスクを作成します。

よくある質問:Oracleデータベース バックアップ&リカバリ

Q1:稼働中のOracleデータベースをバックアップできますか?

可能です。これをホットバックアップと呼びます。実施するためにはデータベースがARCHIVELOGモードである必要があります。本モードを有効にすると、Oracleは全トランザクションをアーカイブログに記録するため、RMANまたはi2Backupが業務停止なしに一貫性のあるデータスナップショットを取得可能です。

Q2:フルバックアップと増分バックアップはどの頻度で実施すべきですか?

バックアップ周期はデータベース規模と業界のコンプライアンス規定に依存します。業界で普及している標準構成は「毎週フルバックアップ/毎日増分バックアップ」です。

  • フルバックアップ(レベル0):週に1回(例:日曜夜)実施
  • 増分バックアップ(レベル1):毎晩実施し、前日以降の変更データを保存。基幹業務データの場合、i2Backupなどのエンタープライズ製品を利用することで準連続保護を実現し、RPOを数分間まで短縮可能です。

Q3:稼働中のOracleデータベースをバックアップできますか?

可能です。これをホットバックアップと呼びます。実施するためにはデータベースがARCHIVELOGモードである必要があります。本モードを有効にすると、Oracleは全トランザクションをアーカイブログに記録するため、RMANまたはi2Backupが業務停止なしに一貫性のあるデータスナップショットを取得可能です。

Q4:フルバックアップと増分バックアップはどの頻度で実施すべきですか?

業界標準の構成は「毎週フルバックアップ/毎日増分バックアップ」です。

  • フルバックアップ(レベル0):週に1回(例:日曜夜)実施
  • 増分バックアップ(レベル1):毎晩実施し、前日以降の変更データを保存。基幹業務データの場合、i2Backupのようなエンタープライズ向けソリューションにより準連続的な保護を提供し、RPOを数分間に抑えられます。

Q5:バックアップとエクスポートの違いは何ですか?

バックアップ(物理バックアップ):(RMANを利用し)実際のデータブロック・ファイルを複製する方式。災害復旧やシステム全体のリストアに使用します。

エクスポート(論理バックアップ):SQL DeveloperまたはData Pumpによりデータをファイルへ抽出する方式。データベース間でテーブルを移行したり、単一の削除行を復元したりする場面に適します。

Q6:作成したOracleバックアップが正常に利用可能か検証する方法は?

スクリプトが完了しただけでバックアップが正常と判断してはいけません。下記手段で検証を実施します。

  • RMAN:VALIDATE DATABASE; または RESTORE DATABASE VALIDATE; を実行。実際にデータを上書きせず、ブロック破損の有無を確認可能。
  • i2Backup:標準搭載の監視ダッシ�ボードから実行ログを確認し、自動復旧訓練を実施できます。

まとめ

Oracleデータベースのバックアップ運用に万能な手法は存在しません。本ガイドで紹介した通り、手法の選定は復旧目標、技術者の知識、業務稼働要件によって変わります。

  • 完全な災害復旧を実現したい場合:コマンドラインのRMANを使用。ハードウェア障害への耐性が最も高く、時点指定リカバリに対応します。
  • 手軽なデータ移行が必要な場合:SQL Developerによるバックアップ。開発者が検証・移行用に特定テーブルやスキーマを出力する場面に適します。
  • 企業向け自動運用・高度なセキュリティを求める場合:Info2softのi2Backupといった専用ソリューションへ移行。手動スクリプトの失敗リスクを解消し、一元管理ダッシュボードを利用可能。イミュータブルバックアップによるランサムウェア対策機能を備えています。またSQL Server、MongoDB、DB2など他のデータベース基盤のバックアップにも対応しています。
概要は準備中です

関連記事

目次:
最新情報を購読
最新のインサイト、ニュース、限定コンテンツをお届けします。いつでも配信解除が可能です。
購読する
ビジネスデータのセキュリティ強化を始めませんか?
60日間の無料トライアルまたはデモで、Info2softが企業データをどのように保護するかをご確認ください。
フォームにご記入の上、送信してください。担当者より追ってご連絡いたします。
このフォームを送信することにより、 プライバシー通知を読み、同意したことを確認します。
{{ isSubmitting ? '送信中...' : '送信する' }}