ホームページ  >  記事  >  データベース  >  Oracle のバックアップとリカバリの詳細な紹介

Oracle のバックアップとリカバリの詳細な紹介

WBOY
WBOY転載
2022-06-21 12:41:572620ブラウズ

この記事では、Oracle に関する関連知識を提供します。主に、データ保護、Oracle バックアップ テクノロジの比較などの内容を含め、バックアップとリカバリに関連する問題が整理されています。以下を見てみましょう。皆様のお役に立てれば幸いです。

Oracle のバックアップとリカバリの詳細な紹介

## 推奨チュートリアル: 「

Oracle ビデオ チュートリアル

1. データ保護について

バックアップとはデータの再構築に使用できるデータベースのデータ コピー。バックアップは物理的または論理的です。

物理バックアップは、データベースの保存と復元に使用される物理ファイルのコピーです。これらのファイルには、データ ファイル、制御ファイル、アーカイブ REDO ログが含まれます。最も重要なことは、各物理バックアップは、ディスク上であっても、テープなどのオフライン記憶媒体上であっても、データベース情報を別の場所に保存するファイルのコピーであるということです。

論理バックアップには、テーブルやストアド プロシージャなどの論理データが含まれます。 Oracle Data Pumpを使用すると、論理データをバイナリ・ファイルにインポートし、後でデータベースにインポートできます。データ・ポンプのコマンドライン・クライアントexpdpおよびimpdpは、DBMS_DATAPUMPおよびDBMS_METADATA PL/SQLパッケージを使用します。

物理バックアップは、信頼性の高いバックアップおよびリカバリ戦略の基礎です。論理バックアップは多くの場合、物理バックアップを補足するのに役立ちますが、物理バックアップがなければ、データ損失に対する十分な保護が提供されません。

特に明記されていない限り、バックアップおよびリカバリのドキュメントで使用されるバックアップという用語は、物理バックアップを指します。データベースのバックアップは、物理的なバックアップを作成する行為です。バックアップとリカバリのドキュメントでは、ほぼ専ら物理バックアップに重点が置かれています。

ドキュメントの大部分は、RMAN (リカバリ マネージャー) に基づくバックアップとリカバリに焦点を当てています。最も注目すべき点は次の点です。

1) 増分バックアップ
増分バックアップでは、前回のバックアップ以降に変更されたデータ ブロックのみが保存されます。したがって、よりコンパクトなバックアップと高速なリストアが提供され、データ ファイル メディアのリカバリ中に REDO を適用する必要性が減ります。ブロック変更追跡を有効にすると、各入力データ ファイルのフル スキャンを回避してバックアップのパフォーマンスを向上させることができます。増分バックアップを実行するには、BACKUP INCREMENTAL を使用します。

2) ブロック メディア リカバリ

少数の破損したデータ ブロックのみを含むデータ ファイルを、オフラインにしたりバックアップから復元したりすることなく修復できます。ブロック メディア リカバリを実行するには、RECOVER BLOCK を使用します。

2. Oracle バックアップ テクノロジーの比較

Oracle データベースのバックアップの作成には、さまざまなテクノロジーを使用できます。以下では、RMAN (Recovery Manager)、ユーザー管理のバックアップ、およびデータ ポンプ (Data Pump) テクノロジーの機能を比較します。


Oracle のバックアップとリカバリの詳細な紹介

3. Oracle フラッシュバック テクノロジー

Oracle フラッシュバック テクノロジーは、物理的なバックアップおよびリカバリ戦略を補完する一連の機能を提供します。

Oracle Flashback テクノロジーは、追加のデータ保護層を提供します。具体的には、Oracle Flashbackのさまざまな機能を使用して、バックアップのリストアやポイント・イン・タイム・リカバリの実行を必要とせずに、過去のデータ状態を表示し、データベースを巻き戻すことができます。要約すると、フラッシュバック機能は、適用できるほとんどの状況でメディア リカバリよりも効率的で、中断が少なくなります。

Oracle フラッシュバック テクノロジを使用すると、次の機能を使用できます:

1) 論理フラッシュバック機能
2) フラッシュバック データベース

3.1. 論理フラッシュバック機能

Oracleデータベース論理層のフラッシュバック機能は RMAN に依存しません。フラッシュバックは、RMAN がバックアップ戦略の一部であるかどうかに関係なく使用できます。

Oracle のフラッシュバック機能のほとんどは論理層で動作し、データベース オブジェクトを表示および操作できるようにします。 Oracle Flashback Drop に加えて、この論理フラッシュバック機能は、データベース更新ごとに記録および更新操作によって上書きされる値である UNDO データに依存します。

Oracle データベースには、次の論理フラッシュバック機能が含まれています。

1) Oracle フラッシュバック クエリ
ターゲット時間を指定し、データベースに対してクエリを実行して、ターゲット時間に表示される結果を表示できます。テーブルの更新などの不要な変更から回復するには、エラーが発生する前の目標時間を選択し、クエリを実行して欠落している行の内容を取得できます。この機能の使用方法については、『Oracle Database開発ガイド』で説明しています。

2) Oracle フラッシュバック バージョン クエリ

指定した期間内に 1 つ以上のテーブルに存在するすべての行のすべてのバージョンを表示できます。また、開始時刻と終了時刻、操作、バージョンを作成したトランザクションの ID など、行のさまざまなバージョンに関するメタデータを取得することもできます。この機能を使用すると、失われたデータ値を回復したり、クエリされたテーブルへの変更を監査したりできます。この機能の使用方法については、『Oracle Database開発ガイド』で説明しています。

3) Oracle フラッシュバック トランザクション クエリ

単一のトランザクションによって行われた変更、または指定した期間内のすべてのトランザクションによって行われた変更を表示できます。この機能の使用方法については、『Oracle Database開発ガイド』で説明しています。

4) Oracle フラッシュバック トランザクション
トランザクションを元に戻すことができます。 Oracle Databaseはトランザクション間の依存関係を判断し、実際にオフセット・トランザクションを作成して不要な変更を元に戻します。データベースは、トランザクションおよびそれに依存するトランザクションがまったく発生しなかったかのような状態に戻ります。この機能の使用方法については、『Oracle Database開発ガイド』で説明しています。

5) Oracle フラッシュバック テーブル
データベースの一部をオフラインにすることなく、テーブルまたはテーブルのグループを指定した以前の時点に復元できます。多くの場合、フラッシュバック テーブルを使用すると、より複雑なポイントインタイム リカバリ操作を実行する必要がなくなります。フラッシュバック テーブルは、データベース固有のプロパティの検索と復元を回避できる方法で、現在のインデックス、トリガー、制約などの関連プロパティを自動的に維持しながらテーブルを復元します。 「フラッシュバック テーブルを使用したテーブルの巻き戻し」の章では、この機能の使用方法について説明します。

6) Oracle Flashback Drop
は、DROP TABLE 文の効果を取り消すことができます。 「Flash Drop を使用した DROP テーブルの巻き戻し」の章では、この機能の使用方法について説明します。

フラッシュバック データ アーカイブを使用すると、いくつかの論理フラッシュバック機能を使用して、かなり過去のデータにアクセスできます。フラッシュバック・データ・アーカイブには、1つ以上の表スペースまたは表スペースの一部が含まれます。フラッシュバック・データ・アーカイブを作成するときは、名前、保持期間、表領域を指定できます。デフォルトのフラッシュバック データ アーカイブを指定することもできます。データベースは、保存期間を超えた古い履歴データを自動的に消去します。

フラッシュバック アーカイブは、テーブルごとにオンまたはオフにできます。デフォルトでは、フラッシュバックアーカイブは各テーブルでオフになっています。

3.2. フラッシュバック データベース

フラッシュバック データベースを使用すると、データベースを以前の時点に復元できます。

物理レベルでは、Oracle Flashback Databaseは、データベースのポイント・イン・タイム・リカバリ(DBPITR、データベース・ポイント・イン・タイム・リカバリ)と比較して、より効率的なデータ保護オプションを提供します。現在のデータファイルに不要な変更があった場合は、RMAN コマンド FLASHBACK DATABASE を使用して、データファイルの内容を過去の状態に復元できます。最終結果は DBPITR の場合と非常に似ていますが、バックアップからデータ ファイルを復元する必要がなく、メディア リカバリよりもやり直しの回数が少ないため、一般に高速です。

フラッシュバック データベースはフラッシュバック ログを使用して、過去のデータ ブロック バージョンとアーカイブ REDO ログからの特定の情報にアクセスします。フラッシュバック・データベースでは、フラッシュバック・ログはそこにのみ保存できるため、データベース用に高速リカバリ領域を構成する必要があります。フラッシュバック ロギングはデフォルトでは有効になっていません。フラッシュバック・ログによって使用される領域はデータベースによって自動的に管理され、高速リカバリ領域内の他のファイルの領域要件とのバランスがとられます。

Oracle Database は、フラッシュバック データベースおよびバックアップとリカバリとともに、リストア ポイントもサポートしています。復元ポイントは、システム変更番号 (SCN、システム変更番号) に相当するエイリアスです。復元ポイントは、データベースの一部またはすべてをその時点までに戻す必要があることが予想される場合、いつでも作成できます。復元ポイントが保証されているため、フラッシュバック データベースを使用してデータベースを復元ポイントに戻すことができます。

推奨チュートリアル: 「Oracle ビデオ チュートリアル

以上がOracle のバックアップとリカバリの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。