31
________________________________________________ © 2003 BakBone Software – Page(s): 1/31 – Article ID: NVSI-020032JPr3 Created: 2003/04/07 Revised: 2003/09/12 Linux Oracle9i Real Application Clusters 動作検証 目次 1. はじめに 2. 検証環境 2.1 構成図 2.2 ハードウェア構成 2.3 ソフトウェア構成 2.4 ディスク構成 2.5 Oracle 構成 3. NetVault Install および設定 3.1 NetVault Install 3.2 Device 登録 3.3 Oracle Online APM および Oracle RMAN APM インストール 3.4 Oracle Online APM および Oracle RMAN APM の設定 4. バックアップ運用方式について 5. オフライン・バックアップ/リストア 5.1 バックアップ 5.2 リストア 6. オンライン・バックアップ/リストア (Oracle Online APM 使用) 6.1 バックアップ 6.2 リストア 7. オンライン・バックアップ/リストア (Oracle RMAN APM 使用) 7.1 バックアップ 7.2 バックアップ・オプション 7.3 リストア 7.4 RMAN 差分バックアップ 8. Oracle Online APM を使用したリカバリ 8.1 特定表領域のリカバリ 8.2 SYSTEM 表領域を含むリカバリ 8.3 init ファイルのリカバリ 8.4 制御ファイルのリカバリ 9. Oracle RMAN APM を使用したリカバリ 9.1 特定表領域のリカバリ 9.2 SYSTEM 表領域を含むリカバリ 9.3 init ファイルのリストア 9.4 制御ファイルのリカバリ 10. 検証結果について バックボーン・ソフトウエア株式会社 163-0711 東京都新宿区西新宿2-7-1 新宿第一生命ビル11Phone(03) 5908-3511 Fax(03) 5908-3512 www.bakbone.co.jp

Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 1/31 –

Article ID: NVSI-020032JPr3 Created: 2003/04/07 Revised: 2003/09/12

Linux Oracle9i Real Application Clusters 動作検証

目次

1. はじめに

2. 検証環境

2.1 構成図 2.2 ハードウェア構成 2.3 ソフトウェア構成 2.4 ディスク構成 2.5 Oracle 構成

3. NetVault の Install および設定

3.1 NetVault Install 3.2 Device 登録 3.3 Oracle Online APM および Oracle RMAN APMインストール 3.4 Oracle Online APM および Oracle RMAN APMの設定

4. バックアップ運用方式について

5. オフライン・バックアップ/リストア

5.1 バックアップ 5.2 リストア

6. オンライン・バックアップ/リストア (Oracle Online APM 使用)

6.1 バックアップ 6.2 リストア

7. オンライン・バックアップ/リストア (Oracle RMAN APM 使用)

7.1 バックアップ 7.2 バックアップ・オプション 7.3 リストア 7.4 RMAN 差分バックアップ

8. Oracle Online APM を使用したリカバリ

8.1 特定表領域のリカバリ 8.2 SYSTEM 表領域を含むリカバリ 8.3 init ファイルのリカバリ 8.4 制御ファイルのリカバリ

9. Oracle RMAN APM を使用したリカバリ

9.1 特定表領域のリカバリ 9.2 SYSTEM 表領域を含むリカバリ 9.3 init ファイルのリストア 9.4 制御ファイルのリカバリ

10. 検証結果について

バックボーン・ソフトウエア株式会社

〒163-0711東京都新宿区西新宿2-7-1

新宿第一生命ビル11階

Phone: (03) 5908-3511Fax: (03) 5908-3512www.bakbone.co.jp

Page 2: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 2/31 –

ETERNUS GR710

DDS4 SingleGP5SDT401

PRIMERGY L100E

Ethernet Switch

PRIMERGY H450 PRIMERGY H450

1. はじめに

Linux 上で稼動する Oracle9i Real Application Clusters(以下 Oracle9i RAC)にて NetVault の動作検証作業を

実施しました。本ドキュメントでは検証作業や検証結果についてまとめたものです。また、本ドキュメントに記載さ

れている内容はバックボーン・ソフトウエア株式会社が保証するものではありません。Oracle の Restore に関し

てはその状況により、その順序、方法が異なりますので詳細に関しては Oracle の文献等をご確認いただくようお

願いいたします。 2. 検証環境

2.1 構成図 2.2 ハードウェア構成 (1) DB サーバ

表 2-1 ハードウェア構成(DB サーバ) [DB1:Node1] メーカー Fujitsu 機種 PRIMERGY H450 CPU Intel Xeon MP 1.6Ghz x4 メモリ 4GB 内蔵ディスク容量 36GB(U160,10000rpm) x3 FC Card PG-FC102

表 2-2 ハードウェア構成(DB サーバ) [DB2:Node2] メーカー Fujitsu 機種 PRIMERGY H450 CPU Intel Xeon MP 1.6Ghz x4 メモリ 4GB 内蔵ディスク容量 36GB(U160,10000rpm) x3 FC Card PG-FC102

(2) バックアップ・サーバ

表 2-3 ハードウェア構成(バックアップ・サーバ) [nvserver] メーカー Fujitsu 機種 PRIMERGY L100 CPU Intel Xeon 2.4Ghz メモリ 256MB 内蔵ディスク容量 80GB(E-IDE,7200rpm) x2 SCSI Card PG-128

(3) ディスク

表 2-4 ハードウェア構成(ディスク) [GR710] メーカー Fujitsu 機種 ETERNUS GR710 I/F FC

Page 3: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 3/31 –

(4) テープ

表 2-5 ハードウェア構成(テープ装置) [DDS4] メーカー Fujitsu 機種 GP5SDT401 (外付け DDS4 シングルドライブ) I/F SCSI

2.3 ソフトウェア構成

表 2-6 ソフトウェア構成 [DB1] ホスト db1 OS RedHat Linux Advanced Server2.1 DB Software Oracle9i R9.2.0.2 :ORACLE_SID=rac1 Cluster Software Oralce Cluster Manager R9.2.0.2 Backup Software NetVault 7.0.0 R030517 Client Oracle Online APM v3.9 Oracle RMAN APM v3.0

表 2-7 ソフトウェア構成 [DB2] ホスト db2 OS RedHat Linux Advanced Server2.1 DB Software Oracle9i R9.2.0.2 :ORACLE_SID=rac2 Cluster Software Oracle Cluster Manager R9.2.0.2 Backup Software NetVault 7.0.0 R030517 Client Oracle Online APM v3.9 Oracle RMAN APM v3.0

表 2-8 ソフトウェア構成 [nvserver] ホスト nvserver OS RedHat Linux Advanced Server2.1 Backup Software NetVault 7.0.0 R030517 Server

2.4 ディスク構成

表 2-9 パーティション構成 [DB1] パーティション Type マウントポイント/Raw Device 使用 /dev/sda1 Internal:File /boot /dev/sda2 Internal:File /var /dev/sda3 Internal:File / /dev/sda5 Internal:File /opt /dev/sda6 Internal:File /var/crash /dev/sda8 Internal:File /usr /dev/sda9 Internal:File /home /dev/sda10 Internal:File /var/opt /dev/sda11 Internal:File /etc/opt /dev/sdb1 Shared:Raw /dev/raw/raw1 <- Oracle: quorum /dev/sdb2 Shared:Raw /dev/raw/raw2 <- Oracle: control_1 /dev/sdb3 Shared:Raw /dev/raw/raw3 <- Oracle: system /dev/sdb5 Shared:Raw /dev/raw/raw4 <- Oracle: temp /dev/sdb6 Shared:Raw /dev/raw/raw5 <- Oracle: redo1_1 /dev/sdb7 Shared:Raw /dev/raw/raw6 <- Oracle: redo1_2 /dev/sdb8 Shared:Raw /dev/raw/raw7 <- Oracle: redo2_1 /dev/sdb9 Shared:Raw /dev/raw/raw8 <- Oracle: redo2_2 /dev/sdb10 Shared:Raw /dev/raw/raw9 <- Oracle: undo_1 /dev/sdb11 Shared:Raw /dev/raw/raw10 <- Oracle: undo_1 /dev/sdb12 Shared:Raw /dev/raw/raw11 <- Oracle: rman_repository /dev/sdb13 Shared:Raw /dev/raw/raw12 <- Oracle: sptbs /dev/sdb14 Shared:Raw /dev/raw/raw14 <- Oracle: data1 /dev/sdc1 Shared:File $ORACLE_HOME/archive/db1 db2:$ORACLE_HOME/archive/db2 NFS:File $ORACLE_HOME/archive/db2

Page 4: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 4/31 –

表 2-10 パーティション構成 [DB2] パーティション Type マウントポイン/Raw Device 使用 /dev/sda1 Internal:File /boot /dev/sda2 Internal:File /var /dev/sda3 Internal:File / /dev/sda5 Internal:File /opt /dev/sda6 Internal:File /var/crash /dev/sda8 Internal:File /usr /dev/sda9 Internal:File /home /dev/sda10 Internal:File /var/opt /dev/sda11 Internal:File /etc/opt /dev/sdb1 Shared:Raw /dev/raw/raw1 <- Oracle: quorum /dev/sdb2 Shared:Raw /dev/raw/raw2 <- Oracle: control_1 /dev/sdb3 Shared:Raw /dev/raw/raw3 <- Oracle: system /dev/sdb5 Shared:Raw /dev/raw/raw4 <- Oracle: temp /dev/sdb6 Shared:Raw /dev/raw/raw5 <- Oracle: redo1_1 /dev/sdb7 Shared:Raw /dev/raw/raw6 <- Oracle: redo1_2 /dev/sdb8 Shared:Raw /dev/raw/raw7 <- Oracle: redo2_1 /dev/sdb9 Shared:Raw /dev/raw/raw8 <- Oracle: redo2_2 /dev/sdb10 Shared:Raw /dev/raw/raw9 <- Oracle: undo_1 /dev/sdb11 Shared:Raw /dev/raw/raw10 <- Oracle: undo_1 /dev/sdb12 Shared:Raw /dev/raw/raw11 <- Oracle: rman_repository /dev/sdb13 Shared:Raw /dev/raw/raw12 <- Oracle: sptbs /dev/sdb14 Shared:Raw /dev/raw/raw14 <- Oracle: data1 /dev/sdc2 Shared:File $ORACLE_HOME/archive/db2 db1:$ORACLE_HOME/archive/db1 NFS:File $ORACLE_HOME/archive/db1

※Oracle での Raw Device はすべて直接ではなく、/opt/app/oracle/oradata 以下からシンボリック・リンクを /dev/raw/rawX に対して行うことにより使用しています。

※それぞれの$ORACLE_HOME は/opt/app/oracle/product/9.2.0 になります。

表 2-11 パーティション構成 [DBBACKUP] パーティション Type マウントポイン/Raw Device 使用 /dev/sda1 Internal:File /boot /dev/sda2 Internal:File /var /dev/sda3 Internal:File / /dev/sda5 Internal:File /opt /dev/sda6 Internal:File /var/crash /dev/sda8 Internal:File /usr /dev/sda9 Internal:File /home /dev/sda10 Internal:File /var/opt /dev/sda11 Internal:File /etc/opt

2.5 Oracle 構成 (1) アーカイブ・ログ格納方法

各ノードのアーカイブ・ログ・ボリュームを NFS により相互マウント (表 2-9 および 2-10 パーティション構成参照) initrac1.ora/initrac2.ora 設定内容(抜粋) ### Archive Log log_archive_start=true rac1.log_archive_dest_1="location=/opt/app/oracle/product/9.2.0/archive/db2 MANDATORY" rac1.log_archive_dest_2="location=/opt/app/oracle/product/9.2.0/archive/db1 MANDATORY " rac2.log_archive_dest_1="location=/opt/app/oracle/product/9.2.0/archive/db1 MANDATORY " rac2.log_archive_dest_2="location=/opt/app/oracle/product/9.2.0/archive/db2 MANDATORY " log_archive_format=archive_%t_%s.log ※今回の構成では SPFILE は使用しておりません。SPFILE 使用時も設定は準拠します。 ※rac1 および rac2 は、各マシンの ORACLE_SID を示しています。

Page 5: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 5/31 –

(2) テスト・データ作成 tablespace DATA_TS として約 12 万件のテスト・データを登録。

(3) Archive Log モードの設定および確認 ※オフライン・バックアップの場合には、必要ありません。Oracle Online APM および Oracle RMAN APM を使

用時には設定が必須です。 3. NetVault の Install および設定 3.1 NetVault Install 通常の手順に従って、db1 および db2 には、NetVault Client、nvserver には NetVault Server のインストールを

実行します。その後、NetVault Server の Client Management より db1 および db2 各ノードのマシンを登録しま

す。 図 3-1 NetVault Client Management 登録

3.2 Device 登録 NetVault Device Management より、テープデバイスの登録を行います。 図 3-2 Add Standalone Device

Page 6: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 6/31 –

3.3 Oracle Online APM および Oracle RMAN APM インストール Client Management -> NetVault Machine 名で右クリックします。Install Software を選択して、必要な APM を

インストールします。 図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install

RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

止後、Oracle の実行ファイルをコンパイルして再作成する必要があります。 また、クライアント側の CLI から rman を使用して、バックアップやリストアを実行するためには、NetVault サーバ

側で nvpluginaccess コマンドを使用して、クライアントに対する許可の設定を行う必要があります。また、この作

業はインストールを行ったノード数分実行する必要があります。 [root@nvserver util]# ./nvpluginaccess -remove -client db1 Removed client stanza 'db1' [root@nvserver util]# ./nvpluginaccess -client db1 -account default Please select a plugin you wish to allow client 'db1' to access: 1) Informix plugin 2) Oracle RMAN plugin 3) Informix and Oracle RMAN plugins 4) Specify plugin name 2 Please enter the password for the account 'default': password Successfully added client 'db1' 3.4 Oracle Online APM および Oracle RMAN APM の設定 各項目に Oracle の設定に合わせて登録します。 図 3-5 Oracle Online APM 設定

表 3-1 Oracle Online APM 設定項目 項目 内容 SID インスタンス毎の SID Home ORACLE_HOME Owner Oracle User Group Oracle Group Select NLS_LANG NLS_LANG

Page 7: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 7/31 –

Init Files Init<SIDname>.ora ファイル Control File Save Location Oracle ユーザーが権限のある Backup

された制御ファイル保存先 Archive Directories アーカイブログディレクトリ Archive File Pattern アーカイブログ形式

※複数ノードの Archive Log を取得するには”,”にてディレクトリ指定を区切り、複数指定が可能。 ※今回の NLS_LANG は Oracle 側の設定として日本語を使用しませんでした。

実際の環境に合わせる必要があります。 図 3-6 Oracle RMAN APM 設定

表 3-1 Oracle RMAN APM 設定項目 項目 内容 SID インスタンス毎の SID Home ORACLE_HOME RMAN RMAN 実行ファイルパス Owner Oracle User Group Oracle Group Select NLS_LANG NLS_LANG

4. バックアップ運用方式について

(1) バックアップ取得方法 1 つのノードから NetVault Server に接続されたテープ装置にネットワーク経由にてバックアップを実行。

(2) バックアップ対象ファイル データファイル [共有ストレージ] アーカイブログファイル [ローカル -> NFS 経由により共有化] 制御ファイル [共有ストレージ] 初期化パラメータファイル [ローカル] オンライン REDO ログ [共有ストレージ] (オフラインの場合のみ取得) その他必要に応じて取得(プログラムファイル等) [ローカル]

(3) バックアップ運用方式 オフラインバックアップ オンラインバックアップ (Oracle Online APM 使用) オンラインバックアップ (Oracle RMAN APM 使用)

(4) Oracle9i RAC に関する注意 RAC は共有されたストレージ上にあるデータ、ローカルにあるデータ、NFS 経由等によりどこからも参照でき

るデータ等があり、それらを不足なくバックアップすることが必要です。また、RMAN 使用時にリカバリカタロ

グを使用する際には、リカバリカタログ自身を RAC 構成とは異なる Oracle サーバに保持したり、そのバック

アップを行うことが必要となります。その他一般的なバックアップに関する注意事項は、通常のスタンドアロン

の Oracle 環境と違いはありません。

Page 8: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 8/31 –

5. オフラインバックアップ すべてのノードにて Oracle のインスタンスをすべて停止した状態にて、オフラインバックアップを実行。ノード毎に

固有のファイルについては、個別に取得を行います。バックアップ終了後、再びインスタンスを起動します。 5.1 バックアップ (1) データファイル、制御ファイル、オンライン REDO ログファイル

今回の検証では Oracle9i RAC では、共有ディスク上の Raw Device を使用しました。そのため NetVault で

バックアップを行う際には、Raw Device プラグインを使用し、ブロックデバイス指定を行う必要があります。 Oracle 側では Raw マッピングされたデバイスファイルを使用しますが、そのマッピングを raw コマンドを使用

して確認するようにしてください。 ※ Raw デバイス以外に OCFS(Oracle Cluster File System)や NAS を使用する方法もあります。その場合に

は、File System Plugin を使用します。 図 5-1 NetVault Raw Device バックアップ

アーカイブログファイル、初期化パラメータファイル、プログラムファイルに関しては File System 上に作成される

ため、File System Plugin にて取得します。 図 5-2 NetVault File System バックアップ

Page 9: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 9/31 –

5.2 リストア リストア時は、Oracle であることを意識せずに単なるファイルや Raw Device イメージとしてのリストアを実行する

だけです。その際には、必ずすべてのノードでインスタンスを停止している必要があります。 各リストアを行う際に、リストアするディレクトリやデバイスファイルを変更することが可能です。 図 5-3 NetVault Raw Device リストア

図 5-4 NetVault File System リストア

Page 10: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 10/31 –

6. オンラインバックアップ (Oracle Online APM 使用)

6.1 バックアップ Oracle Online APM を使用して対象をすべて選択し、バックアップを実行します。[Backup Options]タブでは、

Read Only および Offline の表領域もバックアップするオプションがデフォルトでオンになっています。 図 6-1 Oracle Online バックアップ

6.2 リストア データベースに障害が発生した際に、必要なリカバリに応じて各種データのリストアを実行します。リストアの際に

は、インスタンスを停止、または特定表領域のみオフラインにする必要があります。 図 6-2 全ての表領域リストア 図 6-3 特定の表領域のみリストア

図 6-4 アーカイブログリストア 図 6-5 バックアップされた制御ファイルのリストア

Page 11: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 11/31 –

7. オンライン・バックアップ (Oracle RMAN APM 使用)

7.1 バックアップ Oracle RMAN APM を使用して対象をすべて選択し、バックアップを実行します。初期化パラメータファイルにつ

いては、通常の File System Plugin を使用して別途取得する必要があります。 図 7-1 Oracle RMAN バックアップ

7.2 バックアップ・オプション すべてのオプションは、RMAN のオプションに準拠しており、運用形態に合わせて選択を行います。 リカバリカタログ使用の有無の選択、アーカイブログバックアップ後の削除指定、複数チャネル使用によるパラレ

ルバックアップ、差分・増分等の指定が可能です。(詳細は Oracle RMAN APM マニュアルをご参照ください。) 次の例は、2ch 割り当てることにより、パラレルにバックアップが行われていることが示されています。 複数チャネル使用する場合には、同数以上のドライブが必要であり、ハード以上の割り当てを行うとエラーになり

ます。 図 7-2 Number of channels への割り当てと、Tablespace tag の設定

Page 12: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 12/31 –

図 7-3 2ch によるパラレルバックアップが行われている様子(Job Monitor)

図 7-4 Oracle RMAN backup Options [Tablespace]

図 7-5 Oracle RMAN backup Options [Archive Logs]

図 7-6 Oracle RMAN backup Options [Recovery Catalog]

Page 13: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 13/31 –

7.3 リストア RMAN のリストアはすべて、Oracle 側の Recovery Manager から操作を行います。NetVault の Restore 画面

からは、Backup Piece Name を確認することが可能です。 図 7-7

また RMAN の list backup によっても、詳細なバックアップの結果を確認することが可能です。 RMAN> list backup; List of Backup Sets =================== BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 25 Full 193M SBT_TAPE 00:01:49 09-MAY-03 BP Key: 26 Status: AVAILABLE Tag: NV_CATALOG_DDS_FULL Piece Name: nvserver:#172:db1:RACDB_1_493581179 Controlfile Included: Ckp SCN: 134595 Ckp time: 09-MAY-03 List of Datafiles in backup set 25 File LV Type Ckp SCN Ckp Time Name ---- -- ---- ---------- --------- ---- 1 Full 134596 09-MAY-03 /opt/app/oracle/oradata/system 2 Full 134596 09-MAY-03 /opt/app/oracle/oradata/undo_1 3 Full 134596 09-MAY-03 /opt/app/oracle/oradata/undo_2 4 Full 134596 09-MAY-03 /opt/app/oracle/oradata/rman_repository 5 Full 134596 09-MAY-03 /opt/app/oracle/oradata/sptbs 6 Full 134596 09-MAY-03 /opt/app/oracle/oradata/data1 BS Key Size Device Type Elapsed Time Completion Time ------- ---------- ----------- ------------ --------------- 49 25M SBT_TAPE 00:00:16 09-MAY-03 BP Key: 50 Status: AVAILABLE Tag: TAG20030509T175510 Piece Name: nvserver:#172:db1:RACDB_2_493581310 List of Archived Logs in backup set 49 Thrd Seq Low SCN Low Time Next SCN Next Time ---- ------- ---------- --------- ---------- --------- 1 1 127478 09-MAY-03 127744 09-MAY-03 1 2 127744 09-MAY-03 134567 09-MAY-03 1 3 134567 09-MAY-03 134707 09-MAY-03 1 4 134707 09-MAY-03 134722 09-MAY-03 2 1 127478 09-MAY-03 127742 09-MAY-03

Page 14: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 14/31 –

2 2 127742 09-MAY-03 134570 09-MAY-03 2 3 134570 09-MAY-03 134705 09-MAY-03 2 4 134705 09-MAY-03 134720 09-MAY-03 BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 68 Full 2M SBT_TAPE 00:00:15 09-MAY-03 BP Key: 69 Status: AVAILABLE Tag: NV_CATALOG_DDS_FULL Piece Name: nvserver:#172:db1:RACDB_3_493581338 Controlfile Included: Ckp SCN: 134760 Ckp time: 09-MAY-03 7.4 RMAN 差分バックアップ まず、現在の状況の確認を行います。 表領域 DATA_TS 内に Trousers という 12 万件の登録があるテーブルが作成されています。 SQL> select count(*) from trousers; COUNT(*) ---------- 127440 現在は、127440 件であることが確認できました。 次に、更新のためのデータを INSERT します。 SQL> @orcl_change1.sql SQL> select count(*) from trousers; COUNT(*) ---------- 127455 これにより 15 件追加されたことが確認できます。 次に NetVault の GUI を使用して、Oracle RMAN APM のプラグインを開き対象となる表領域等を指定したあと、

Backup Option の Backup Type の所で、”Incremental”を選択し Level を入力します。(例では 2 に設定しまし

た。) 図 7-8 Oracle RMAN Backup Options [Incremental]

Page 15: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 15/31 –

バックアップ終了後、RMAN の list backup により、Type が”Incr”および LV が”2”になっていることが確認できま

す。 RMAN> list backup; BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 100 Incr 2 189M SBT_TAPE 00:01:22 12-MAY-03 BP Key: 101 Status: AVAILABLE Tag: TAG20030512T184221 Piece Name: nvserver:#281:db1:RACDB_4_493843341 Controlfile Included: Ckp SCN: 93333 Ckp time: 12-MAY-03 List of Datafiles in backup set 100 File LV Type Ckp SCN Ckp Time Name ---- -- ---- ---------- --------- ---- 1 0 Incr 93334 12-MAY-03 /opt/app/oracle/oradata/system 2 0 Incr 93334 12-MAY-03 /opt/app/oracle/oradata/undo_1 3 0 Incr 93334 12-MAY-03 /opt/app/oracle/oradata/undo_2 4 0 Incr 93334 12-MAY-03 /opt/app/oracle/oradata/rman_repository 5 0 Incr 93334 12-MAY-03 /opt/app/oracle/oradata/sptbs 6 0 Incr 93334 12-MAY-03 /opt/app/oracle/oradata/data1 BS Key Size Device Type Elapsed Time Completion Time ------- ---------- ----------- ------------ --------------- 130 39M SBT_TAPE 00:00:20 12-MAY-03 BP Key: 131 Status: AVAILABLE Tag: TAG20030512T184352 Piece Name: nvserver:#281:db1:RACDB_5_493843433 List of Archived Logs in backup set 130 Thrd Seq Low SCN Low Time Next SCN Next Time ---- ------- ---------- --------- ---------- --------- 1 1 85993 12-MAY-03 86453 12-MAY-03 1 2 86453 12-MAY-03 86457 12-MAY-03 1 3 86457 12-MAY-03 93210 12-MAY-03 1 4 93210 12-MAY-03 93216 12-MAY-03 1 5 93216 12-MAY-03 93367 12-MAY-03 1 6 93367 12-MAY-03 93373 12-MAY-03 2 1 85993 12-MAY-03 86451 12-MAY-03 2 2 86451 12-MAY-03 86454 12-MAY-03 2 3 86454 12-MAY-03 86457 12-MAY-03 2 4 86457 12-MAY-03 93208 12-MAY-03 2 5 93208 12-MAY-03 93210 12-MAY-03 2 6 93210 12-MAY-03 93214 12-MAY-03 2 7 93214 12-MAY-03 93216 12-MAY-03 2 8 93216 12-MAY-03 93365 12-MAY-03 2 9 93365 12-MAY-03 93367 12-MAY-03 2 10 93367 12-MAY-03 93370 12-MAY-03 2 11 93370 12-MAY-03 93373 12-MAY-03 BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 167 Full 2M SBT_TAPE 00:00:14 12-MAY-03 BP Key: 168 Status: AVAILABLE Tag: TAG20030512T184419 Piece Name: nvserver:#281:db1:RACDB_6_493843460 Controlfile Included: Ckp SCN: 93383 Ckp time: 12-MAY-03

Page 16: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 16/31 –

8. Oracle Online APM を使用したリカバリ 各メディア障害を実際に発生させ、そのリカバリ手順について確認します。ここでは、実際のファイルのリストアに

Oracle Online APM の機能を使用します。ファイルのリストア方法については、項目 6.2 を参照してください。 メディア障害の種類について下記の内容をテストします。 ① 特定表領域 ② SYSTEM 表領域(データベース全体) ③ 制御ファイル 8.1 特定表領域のリカバリ ① テストとして作成した DATA_TS のボリュームに故意にファイルシステムを作成し、使用できない状態にしま

す。 はじめに、破壊前の状態を確認します。 SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 85748 09-MAY-03 2 NOT ACTIVE 85822 09-MAY-03 3 NOT ACTIVE 85899 09-MAY-03 4 NOT ACTIVE 85718 09-MAY-03 5 NOT ACTIVE 85733 09-MAY-03 6 NOT ACTIVE 85690 09-MAY-03 6 rows selected. ② DATA_TS が格納されているボリュームに mkfs をかけてデータを破壊します。 [root@db1 oradata]# mkfs -j /dev/sdb14 もう一度、確認します。 SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 85748 09-MAY-03 2 NOT ACTIVE 85822 09-MAY-03 3 NOT ACTIVE 85899 09-MAY-03 4 NOT ACTIVE 85718 09-MAY-03 5 NOT ACTIVE 85733 09-MAY-03 6 WRONG FILE TYPE 0 6 rows selected. ③ FILE#6 が WRONG FILE TYPE として使用できない状態になります。 そのため、DATA_TS を強制的に offline の状態にします。 SQL> alter tablespace DATA_TS offline immediate; Tablespace altered. SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 85748 09-MAY-03 2 NOT ACTIVE 85822 09-MAY-03 3 NOT ACTIVE 85899 09-MAY-03 4 NOT ACTIVE 85718 09-MAY-03

Page 17: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 17/31 –

5 NOT ACTIVE 85733 09-MAY-03 ④ NetVault により特定表領域のリストアを行います。(図 6-2 参照) ⑤ リストア後、テーブルスペースのリカバリを行います。AUTO により自動的に必要なアーカイブログが適用さ

れます。また、両方のノードのアーカイブログが必要な事に注意が必要です。

SQL> recover tablespace DATA_TS; ORA-00279: change 85690 generated at 05/09/2003 14:36:19 needed for thread 1 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_1_5.log ORA-00280: change 85690 for thread 1 is in sequence #5 Specify log: {<RET>=suggested | filename | AUTO | CANCEL} auto ORA-00279: change 85690 generated at 05/09/2003 14:26:12 needed for thread 2 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_2_5.log ORA-00280: change 85690 for thread 2 is in sequence #5 Log applied. Media recovery complete. ⑥ メディアリカバリが完了したことを確認します。 その後、表領域を online にして状態を確認します。 SQL> alter tablespace DATA_TS online; Tablespace altered. SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 85748 09-MAY-03 2 NOT ACTIVE 85822 09-MAY-03 3 NOT ACTIVE 85899 09-MAY-03 4 NOT ACTIVE 85718 09-MAY-03 5 NOT ACTIVE 85733 09-MAY-03 6 NOT ACTIVE 85690 09-MAY-03 6 rows selected. 8.2 SYSTEM 表領域を含むリカバリ ① SYSTEM 表領域に障害が発生したとします。 Oracle では一般的に SYSTEM 表領域はオフラインにできないため、そのリストア時はシステムを停止する必要

があります。SYSTEM 表領域のリストアを行った後、データベース全体のリカバリを行う必要があります。 ② SYSTEM を mkfs により破壊 [root@db1 oradata]# mkfs -j /dev/sdb3 ③ また、アーカイブログについても障害が発生したとします。 [oracle@db1 oracle]$ cd /opt/app/oracle/product/9.2.0/archive/db1 [oracle@db1 db1]$ ls archive_1_1.log archive_1_4.log archive_2_1.log archive_2_4.log archive_1_2.log archive_1_5.log archive_2_2.log archive_2_5.log archive_1_3.log archive_1_6.log archive_2_3.log archive_2_6.log [oracle@db1 db1]$ rm ./*log

Page 18: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 18/31 –

[oracle@db1 db1]$ ls [oracle@db1 db1]$ ④ SYSTEM 表領域に障害が発生したためオフラインにはできません。その旨のメッセージが表示されます。 SQL> alter tablespace system offline immediate; alter tablespace system offline immediate * ERROR at line 1: ORA-01541: system tablespace cannot be brought offline; shut down if necessary ⑤ 両方のノードでシャットダウンを実行します。SYSTEM 表領域が破損した場合には、正常に終了処理を行う

ことができないため、強制終了を行います。 SQL> shutdown abort ORACLE instance shut down. ⑥ NetVault によりすべての表領域のリストアを実行します。(図 6-2 参照)

※アーカイブログのリストアについては、そのアーカイブログ先の指定方法、バックアップ方法によってリスト

ア手順が異なります。下記内容はすべて同一ディレクトリにてすべてのノードのログが参照できるようになっ

ていると仮定します。 ⑦ mount 状態で起動します。 SQL> startup mount ORACLE instance started. Total System Global Area 319795432 bytes Fixed Size 450792 bytes Variable Size 100663296 bytes Database Buffers 218103808 bytes Redo Buffers 577536 bytes Database mounted. SQL> ⑧ データベースのリカバリを試みますが、アーカイブログがないため失敗します。 SQL> recover database; ORA-00279: change 85690 generated at 05/09/2003 14:36:19 needed for thread 1 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_1_5.log ORA-00280: change 85690 for thread 1 is in sequence #5 Specify log: {<RET>=suggested | filename | AUTO | CANCEL} auto ORA-00308: cannot open archived log '/opt/app/oracle/product/9.2.0/archive/db1/archive_1_5.log' ORA-27037: unable to obtain file status Linux Error: 2: No such file or directory Additional information: 3 ⑨ NetVault によりアーカイブログのリストアを実行します。(図 6-4 参照) リカバーデータベースを実行 SQL> recover database; ORA-00279: change 85690 generated at 05/09/2003 14:36:19 needed for thread 1 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_1_5.log ORA-00280: change 85690 for thread 1 is in sequence #5 Specify log: {<RET>=suggested | filename | AUTO | CANCEL}

Page 19: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 19/31 –

auto ORA-00279: change 85690 generated at 05/09/2003 14:26:12 needed for thread 2 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_2_5.log ORA-00280: change 85690 for thread 2 is in sequence #5 Log applied. Media recovery complete. ⑩ データベースのリカバリを実行した後、データベースをオープンして確認します。 SQL> alter database open; Database altered. SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 85748 09-MAY-03 2 NOT ACTIVE 85822 09-MAY-03 3 NOT ACTIVE 85899 09-MAY-03 4 NOT ACTIVE 85718 09-MAY-03 5 NOT ACTIVE 85733 09-MAY-03 6 NOT ACTIVE 85690 09-MAY-03 6 rows selected. ⑪ もう一つのノードも起動します。 8.3 init ファイルのリカバリ Oracle のシステムパラメータが格納されている init ファイルは、Oracle のデータベース起動に必要不可欠な重要

なファイルです。 ① init ファイルの確認と削除を行います。 [oracle@db1 oracle]$ cd $ORACLE_HOME/dbs [oracle@db1 dbs]$ ls -al initrac1.ora -rw-r--r-- 1 oracle dba 1545 5 月 8 17:27 initrac1.ora [oracle@db1 dbs]$ rm ./initrac1.ora [oracle@db1 dbs]$ ls -al initrac1.ora ls: initrac1.ora: そのようなファイルやディレクトリはありません ② rac1 インスタンスをシャットダウンします。 SQL> shutdown Database closed. Database dismounted. ORACLE instance shut down. ③ rac1 インスタンスを起動しようとしますが、init ファイルがないため、失敗します。 SQL> startup ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/opt/app/oracle/product/9.2.0/dbs/init rac1.ora' ④ バックアップされた init ファイルのリストアを NetVault の GUI を使用して実行します。 ⑤ ファイルのリストア確認を行い rac1 インスタンスを起動します。

Page 20: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 20/31 –

[oracle@db1 dbs]$ cd $ORACLE_HOME/dbs [oracle@db1 dbs]$ ls -al initrac1.ora -rw-r--r-- 1 oracle dba 1545 5 月 9 15:49 initrac1.ora SQL> startup ORACLE instance started. Total System Global Area 319795432 bytes Fixed Size 450792 bytes Variable Size 100663296 bytes Database Buffers 218103808 bytes Redo Buffers 577536 bytes Database mounted. Database opened. 正常に起動することが確認できました。 8.4 制御ファイルのリカバリ 通常は、異なるディスク装置に振り分けられて多重化された制御ファイルを使用しますが、そのすべての制御ファ

イルが使用できない状態になった際には、バックアップされた制御ファイルを使用してリカバリを行います。 ① 制御ファイルの確認をします。 SQL> select * from v$controlfile; STATUS ------- NAME -------------------------------------------------------------------------------- /opt/app/oracle/oradata/control_1 ② コントロールファイルを破壊して、表示の確認を行います。 [root@db1 root]# mkfs -j /dev/sdb2 SQL> select * from v$controlfile; select * from v$controlfile * ERROR at line 1: ORA-03113: end-of-file on communication channel ③ この状態ではシャットダウンも起動もできないことがわかります。 SQL> shutdown abort; ORA-24324: service handle not initialized ORA-01041: internal error. hostdef extension doesn't exist SQL> startup ORACLE instance started. Total System Global Area 319795432 bytes Fixed Size 450792 bytes Variable Size 100663296 bytes Database Buffers 218103808 bytes Redo Buffers 577536 bytes ORA-00227: corrupt block detected in controlfile: (block 1, # blocks 1) ORA-00202: controlfile: '/opt/app/oracle/oradata/control_1' ④ NetVault によりバックアップされた制御ファイルのリストアを行います。(図 6-5 参照)

Page 21: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 21/31 –

⑤ リストア後、ファイルとなっているバックアップされた制御ファイルを dd コマンドを使用して Raw Device とし

て書き込みを行います。 [oracle@db1 oracle]$ cd $ORACLE_HOME/dbs [oracle@db1 dbs]$ dd if=./ctrlrac1.sav of=/opt/app/oracle/oradata/control_1 読み込んだブロック数は 4112+0 書き込んだブロック数は 4112+0 ⑥ バックアップ制御ファイルを書き込み後、起動を試みるが RESETLOGS が必要である旨が表示されます。 SQL> startup ORACLE instance started. Total System Global Area 319795432 bytes Fixed Size 450792 bytes Variable Size 100663296 bytes Database Buffers 218103808 bytes Redo Buffers 577536 bytes Database mounted. ORA-01589: must use RESETLOGS or NORESETLOGS option for database open ⑦ また、単純なリカバーはできません。 SQL> recover database; ORA-00283: recovery session canceled due to errors ORA-01610: recovery using the BACKUP CONTROLFILE option must be done ⑧ リカバーデータベース using backup controlfile until cancel を行って、ログの適用を行います。 SQL> recover database using backup controlfile until cancel; ORA-00279: change 85971 generated at 05/09/2003 14:29:42 needed for thread 1 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_1_5.log ORA-00280: change 85971 for thread 1 is in sequence #5 Specify log: {<RET>=suggested | filename | AUTO | CANCEL} auto ORA-00279: change 85971 generated at 05/09/2003 14:26:12 needed for thread 2 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_2_5.log ORA-00280: change 85971 for thread 2 is in sequence #5 ORA-00308: cannot open archived log '/opt/app/oracle/product/9.2.0/archive/db1/archive_1_8.log' ORA-27037: unable to obtain file status Linux Error: 2: No such file or directory Additional information: 3 ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below ORA-01194: file 1 needs more recovery to be consistent ORA-01110: data file 1: '/opt/app/oracle/oradata/system' オンライン REDO ログを適用する必要がある場合(上記の場合 archive_1_8.lo が該当)その時点まで適用される

ため、再度 recover database を実行し、オンライン REDO ログのパスを指定します。 SQL> recover database using backup controlfile until cancel; ORA-00279: change 126699 generated at 05/09/2003 15:42:15 needed for thread 1 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_1_8.log

Page 22: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 22/31 –

ORA-00280: change 126699 for thread 1 is in sequence #8 Specify log: {<RET>=suggested | filename | AUTO | CANCEL} #オンライン REDO ログのファイルパスを設定数分入力します。(今回はシンボリックリンクファイルを指定) Specify log: {<RET>=suggested | filename | AUTO | CANCEL} /opt/app/oracle/oradata/redo1_2 Log applied. Media recovery complete. ⑨ 通常のオープンを試みると RESETLOGS option を使用するメッセージが表示されます。そのため、

RESETLOGS オプション付でオープンします。 SQL> alter database open noresetlogs; alter database open noresetlogs * ERROR at line 1: ORA-01588: must use RESETLOGS option for database open SQL> alter database open resetlogs; Database altered. ⑩ 昔のログはいらないので削除します [oracle@db1 oracle]$ cd /opt/app/oracle/product/9.2.0/archive/db1 [oracle@db1 db1]$ rm ./*log [oracle@db1 db1]$ ls [oracle@db1 db1]$ [oracle@db1 db1]$ cd ../db2 [oracle@db1 db2]$ ls archive_1_1.log archive_1_5.log archive_2_2.log archive_2_6.log archive_1_2.log archive_1_6.log archive_2_3.log archive_2_7.log archive_1_3.log archive_1_7.log archive_2_4.log archive_1_4.log archive_2_1.log archive_2_5.log [oracle@db1 db2]$ rm ./*log [oracle@db1 db2]$ ls [oracle@db1 db2]$ ⑪ 試しに log switch を強制的に行うと、ログがリセットされ 1 番から作成されていることが確認できます。 SQL> alter system archive log current; System altered. [oracle@db1 oracle]$ cd /opt/app/oracle/product/9.2.0/archive/db1 [oracle@db1 db1]$ ls [oracle@db1 db1]$ ls archive_1_1.log archive_2_1.log ⑫ リセットログで起動後はログ順序番号がリセットされる(1 に戻る)ため既存のバックアップデータは利用でき

なくなります。そのため、オープン後必ず再度 NetVault を使用してフルバックアップを実行するようにします。 ⑬ バックアップ制御ファイルを使用してリカバリすると、ローカル管理一次表領域から一次ファイルのエントリが

削除されるため再追加をします。 SQL> alter tablespace temp add tempfile '/opt/app/oracle/oradata/temp' size 100m reuse; Tablespace altered.

Page 23: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 23/31 –

9. Oracle RMAN APM を使用したリカバリ

各メディア障害を実際に発生させ、そのリカバリ手順について確認します。ここでは、実際のファイルのリストアに

Oracle RMAN APM の機能を使用します。ファイルのリストア方法については、各項目毎に例が記載されており

ますが、詳細な手順につきましては Oracle 社が提供する Recovery Manager のマニュアルをご参照ください。 メディア障害の種類について下記の内容をテストします。 ① 特定表領域 ② SYSTEM 表領域(データベース全体) ③ 制御ファイル 9.1 特定表領域のリカバリ ① まず、状態の確認を行います。 SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 86240 12-MAY-03 2 NOT ACTIVE 86309 12-MAY-03 3 NOT ACTIVE 86379 12-MAY-03 4 NOT ACTIVE 86216 12-MAY-03 5 NOT ACTIVE 86228 12-MAY-03 6 NOT ACTIVE 86192 12-MAY-03 6 rows selected. ② テストとして作成した DATA_TS のボリュームに故意にファイルシステムを作成し、使用できない状態にしま

す。また、その確認を行います。 [root@db1 oradata]# mkfs -j /dev/sdb14 SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 86240 12-MAY-03 2 NOT ACTIVE 86309 12-MAY-03 3 NOT ACTIVE 86379 12-MAY-03 4 NOT ACTIVE 86216 12-MAY-03 5 NOT ACTIVE 86228 12-MAY-03 6 WRONG FILE TYPE 0 6 rows selected. ③ RMAN を使用してのリストアおよびリカバリ処理 RMAN> run { 2> allocate channel ch1 type 'SBT_TAPE'; 3> sql "ALTER TABLESPACE DATA_TS OFFLINE IMMEDIATE"; 4> restore tablespace DATA_TS; 5> recover tablespace DATA_TS; 6> sql "ALTER TABLESPACE DATA_TS ONLINE"; 7> } NetVault --- MMS SBT sbtinit method. allocated channel: ch1 channel ch1: sid=17 devtype=SBT_TAPE channel ch1: MMS Version 0.0.1.0 sql statement: ALTER TABLESPACE DATA_TS OFFLINE IMMEDIATE

Page 24: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 24/31 –

Starting restore at 12-MAY-03 channel ch1: starting datafile backupset restore channel ch1: specifying datafile(s) to restore from backup set restoring datafile 00006 to /opt/app/oracle/oradata/data1 NetVault --- SBT sbtopen method. NetVault --- SBT sbtclose method. NetVault --- SBT Restore completed. channel ch1: restored backup piece 1 piece handle=nvserver:#281:db1:RACDB_4_493843341 tag=TAG20030512T184221 params=N ULL channel ch1: restore complete Finished restore at 12-MAY-03 Starting recover at 12-MAY-03 starting media recovery archive log thread 1 sequence 5 is already on disk as file /opt/app/oracle/produ ct/9.2.0/archive/db2/archive_1_5.log archive log thread 2 sequence 8 is already on disk as file /opt/app/oracle/produ ct/9.2.0/archive/db2/archive_2_8.log archive log thread 2 sequence 9 is already on disk as file /opt/app/oracle/produ ct/9.2.0/archive/db2/archive_2_9.log archive log thread 1 sequence 6 is already on disk as file /opt/app/oracle/produ ct/9.2.0/archive/db2/archive_1_6.log archive log thread 2 sequence 10 is already on disk as file /opt/app/oracle/prod uct/9.2.0/archive/db2/archive_2_10.log archive log thread 2 sequence 11 is already on disk as file /opt/app/oracle/prod uct/9.2.0/archive/db2/archive_2_11.log archive log filename=/opt/app/oracle/product/9.2.0/archive/db2/archive_1_5.log t hread=1 sequence=5 archive log filename=/opt/app/oracle/product/9.2.0/archive/db2/archive_2_8.log t hread=2 sequence=8 archive log filename=/opt/app/oracle/product/9.2.0/archive/db2/archive_2_9.log t hread=2 sequence=9 archive log filename=/opt/app/oracle/product/9.2.0/archive/db2/archive_2_10.log thread=2 sequence=10 media recovery complete Finished recover at 12-MAY-03 sql statement: ALTER TABLESPACE DATA_TS ONLINE released channel: ch1 ④ リカバリ後の確認 SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 86240 12-MAY-03 2 NOT ACTIVE 86309 12-MAY-03 3 NOT ACTIVE 86379 12-MAY-03 4 NOT ACTIVE 86216 12-MAY-03 5 NOT ACTIVE 86228 12-MAY-03 6 NOT ACTIVE 86192 12-MAY-03 6 rows selected. SQL> select count(*) from trousers; COUNT(*) ---------- 127455

Page 25: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 25/31 –

9.2 SYSTEM 表領域を含むリカバリ ① SYSTEM 表領域に障害が発生したとします。Oracle では一般的に SYSTEM 表領域はオフラインにできな

いため、そのリストア時はシステムを停止する必要があります。SYSTEM 表領域のリストアを行った後、デ

ータベース全体のリカバリを行う必要があります。 ② SYSTEM を mkfs により破壊 [root@db1 oradata]# mkfs -j /dev/sdb3 ③ アーカイブログの消失 [oracle@db1 oracle]$ cd /opt/app/oracle/product/9.2.0/archive/db1 [oracle@db1 db1]$ ls archive_1_1.log archive_1_6.log archive_2_3.log archive_2_8.log archive_1_2.log archive_2_1.log archive_2_4.log archive_2_9.log archive_1_3.log archive_2_10.log archive_2_5.log archive_1_4.log archive_2_11.log archive_2_6.log archive_1_5.log archive_2_2.log archive_2_7.log [oracle@db1 db1]$ rm ./*log [oracle@db1 db1]$ ls [oracle@db1 db1]$ ④ 状態の確認 SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 WRONG FILE TYPE 0 2 NOT ACTIVE 86309 12-MAY-03 3 NOT ACTIVE 86379 12-MAY-03 4 NOT ACTIVE 86216 12-MAY-03 5 NOT ACTIVE 86228 12-MAY-03 6 NOT ACTIVE 86192 12-MAY-03 6 rows selected. ⑤ システムのシャットダウンを2ノードにて実行 SQL> shutdown ORA-01122: database file 1 failed verification check ORA-01110: data file 1: '/opt/app/oracle/oradata/system' ORA-01251: Unknown File Header Version read for file number 1 SQL> shutdown abort ORACLE instance shut down. ⑥ mount 状態で rac1 を起動 ⑦ RMAN を使用してのリストア/リカバリ [oracle@db1 db1]$ rman target / catalog rman/rman@orcl Recovery Manager: Release 9.2.0.2.0 - Production Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved. connected to target database: RACDB (DBID=491106297) connected to recovery catalog database RMAN> run {

Page 26: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 26/31 –

2> allocate channel ch1 type 'SBT_TAPE'; 3> restore tablespace system; 4> recover tablespace system; 5> sql "ALTER DATABSE OPEN"; <- DATABASE の綴り間違いあえてそのまま 6> } NetVault --- MMS SBT sbtinit method. allocated channel: ch1 channel ch1: sid=20 devtype=SBT_TAPE channel ch1: MMS Version 0.0.1.0 Starting restore at 12-MAY-03 channel ch1: starting datafile backupset restore channel ch1: specifying datafile(s) to restore from backup set restoring datafile 00001 to /opt/app/oracle/oradata/system NetVault --- SBT sbtopen method. NetVault --- SBT sbtclose method. NetVault --- SBT Restore completed. channel ch1: restored backup piece 1 piece handle=nvserver:#281:db1:RACDB_4_493843341 tag=TAG20030512T184221 params=N ULL channel ch1: restore complete Finished restore at 12-MAY-03 Starting recover at 12-MAY-03 starting media recovery archive log thread 1 sequence 5 is already on disk as file /opt/app/oracle/produ ct/9.2.0/archive/db2/archive_1_5.log archive log thread 2 sequence 8 is already on disk as file /opt/app/oracle/produ ct/9.2.0/archive/db2/archive_2_8.log archive log thread 2 sequence 9 is already on disk as file /opt/app/oracle/produ ct/9.2.0/archive/db2/archive_2_9.log archive log thread 1 sequence 6 is already on disk as file /opt/app/oracle/produ ct/9.2.0/archive/db2/archive_1_6.log archive log thread 2 sequence 10 is already on disk as file /opt/app/oracle/prod uct/9.2.0/archive/db2/archive_2_10.log archive log thread 2 sequence 11 is already on disk as file /opt/app/oracle/prod uct/9.2.0/archive/db2/archive_2_11.log archive log filename=/opt/app/oracle/product/9.2.0/archive/db2/archive_1_5.log t hread=1 sequence=5 archive log filename=/opt/app/oracle/product/9.2.0/archive/db2/archive_2_8.log t hread=2 sequence=8 archive log filename=/opt/app/oracle/product/9.2.0/archive/db2/archive_2_9.log t hread=2 sequence=9 archive log filename=/opt/app/oracle/product/9.2.0/archive/db2/archive_2_10.log thread=2 sequence=10 media recovery complete Finished recover at 12-MAY-03 sql statement: ALTER DATABSE OPEN released channel: ch1 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03009: failure of sql command on default channel at 05/12/2003 19:02:40 RMAN-11003: failure during parse/execution of SQL statement: ALTER DATABSE OPEN ORA-00940: invalid ALTER command RMAN>

Page 27: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 27/31 –

※ALTER 文を間違えたので sqlplus から手動にて open しました。本来は、RMAN から実行可能です。 SQL> alter database open; Database altered. ⑧ リカバリ後の確認 SQL> select * from v$backup; FILE# STATUS CHANGE# TIME ---------- ------------------ ---------- --------- 1 NOT ACTIVE 86240 12-MAY-03 2 NOT ACTIVE 86309 12-MAY-03 3 NOT ACTIVE 86379 12-MAY-03 4 NOT ACTIVE 86216 12-MAY-03 5 NOT ACTIVE 86228 12-MAY-03 6 NOT ACTIVE 86192 12-MAY-03 6 rows selected. 正しいステータスになり、リストア/リカバリが確認できました。 ⑨ rac2 ノードを起動します。 9.3 init ファイルのリストア 通常の FileSystemPlugin または、OracleOnline APM を使用してバックアップリストアを実行します。Oracle RMAN 自体にバックアップする機能はありません。 9.4 制御ファイルのリカバリ 通常は、異なるディスク装置に振り分けられて多重化された制御ファイルを使用しますが、そのすべての制御ファ

イルが使用できない状態になった際には、バックアップされた制御ファイルを使用してリカバリを行います。 ① 制御ファイルの確認をします。 SQL> select * from v$controlfile; STATUS ------- NAME -------------------------------------------------------------------------------- /opt/app/oracle/oradata/control_1 ② 制御ファイルを破壊して、表示の確認を行います。 [root@db1 root]# mkfs -j /dev/sdb2 SQL> select * from v$controlfile; select * from v$controlfile * ERROR at line 1: ORA-03113: end-of-file on communication channel ③ NetVault による制御ファイルのリストア とりあえず起動します。(nomount 状態になる) SQL> startup ORACLE instance started.

Page 28: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 28/31 –

Total System Global Area 319795432 bytes Fixed Size 450792 bytes Variable Size 100663296 bytes Database Buffers 218103808 bytes Redo Buffers 577536 bytes ORA-00227: corrupt block detected in controlfile: (block 1, # blocks 1) ORA-00202: controlfile: '/opt/app/oracle/oradata/control_1' RMAN でリストアを行います。 [oracle@db1 db1]$ rman target / catalog rman/rman@orcl Recovery Manager: Release 9.2.0.2.0 - Production Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved. connected to target database (not started) connected to recovery catalog database RMAN> run { 2> allocate channel ch1 type 'SBT_TAPE'; 3> restore controlfile to '/opt/app/oracle/product/9.2.0/dbs/ctrlrac1_rman.sav'; 4> } NetVault --- MMS SBT sbtinit method. allocated channel: ch1 channel ch1: sid=20 devtype=SBT_TAPE channel ch1: MMS Version 0.0.1.0 Starting restore at 12-MAY-03 channel ch1: starting datafile backupset restore channel ch1: restoring controlfile output filename=/opt/app/oracle/product/9.2.0/dbs/ctrlrac1_rman.sav NetVault --- SBT sbtopen method. NetVault --- SBT sbtclose method. NetVault --- SBT Restore completed. channel ch1: restored backup piece 1 piece handle=nvserver:#281:db1:RACDB_6_493843460 tag=TAG20030512T184419 params=N ULL channel ch1: restore complete Finished restore at 12-MAY-03 released channel: ch1 ④ リストアしたファイルの確認 [oracle@db1 oracle]$ cd $ORACLE_HOME/dbs [oracle@db1 dbs]$ ls ctrlrac1.sav init.ora initrac1.ora snapcf_rac1.f ctrlrac1_rman.sav initdw.ora orapwrac1 ctrlrac1_rman.sav があることがわかります。 ⑤ リストア後、dd による Raw Device への書き込みを行います。 (両ノードがシャットダウンされている状態であること) [oracle@db1 oracle]$ cd $ORACLE_HOME/dbs [oracle@db1 dbs]$ dd if=./ctrlrac1_rman.sav of=/opt/app/oracle/oradata/control_1 読み込んだブロック数は 4112+0 書き込んだブロック数は 4112+0

Page 29: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 29/31 –

⑥ rac1 にて起動を試みて見ます。 SQL> startup ORACLE instance started. Total System Global Area 319795432 bytes Fixed Size 450792 bytes Variable Size 100663296 bytes Database Buffers 218103808 bytes Redo Buffers 577536 bytes Database mounted. ORA-01589: must use RESETLOGS or NORESETLOGS option for database open ⑦ リカバーの試み SQL> recover database; ORA-00283: recovery session canceled due to errors ORA-01610: recovery using the BACKUP CONTROLFILE option must be done ⑧ recover database using backup controlfile until cancel の実行 SQL> recover database using backup controlfile until cancel ORA-00279: change 93383 generated at 05/12/2003 18:43:51 needed for thread 1 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_1_7.log ORA-00280: change 93383 for thread 1 is in sequence #7 ORA-00308: cannot open archived log '/opt/app/oracle/product/9.2.0/archive/db1/archive_1_8.log' ORA-27037: unable to obtain file status Linux Error: 2: No such file or directory Additional information: 3 ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below ORA-01194: file 1 needs more recovery to be consistent ORA-01110: data file 1: '/opt/app/oracle/oradata/system' オンライン REDO ログを適用する必要がある場合(上記の場合 archive_1_8.lo が該当 )その時点まで適用されるため、再度 recover database を実行し、オンライン REDO ログのパスを指定する。 SQL> recover database using backup controlfile until cancel; ORA-00279: change 133955 generated at 05/12/2003 19:04:49 needed for thread 1 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_1_8.log ORA-00280: change 133955 for thread 1 is in sequence #8 Specify log: {<RET>=suggested | filename | AUTO | CANCEL} /opt/app/oracle/oradata/redo1_2 ORA-00279: change 133955 generated at 05/12/2003 18:43:52 needed for thread 2 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_2_12.log ORA-00280: change 133955 for thread 2 is in sequence #12 Specify log: {<RET>=suggested | filename | AUTO | CANCEL} /opt/app/oracle/oradata/redo2_2

Page 30: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 30/31 –

ORA-00279: change 134130 generated at 05/12/2003 19:03:54 needed for thread 2 ORA-00289: suggestion : /opt/app/oracle/product/9.2.0/archive/db1/archive_2_13.log ORA-00280: change 134130 for thread 2 is in sequence #13 ORA-00278: log file '/opt/app/oracle/oradata/redo2_2' no longer needed for this recovery Specify log: {<RET>=suggested | filename | AUTO | CANCEL} /opt/app/oracle/oradata/redo2_1 Log applied. Media recovery complete. 最後にメディアリカバリが行われたことを確認します。 ⑨ RESETLOGS option 付きでのオープン SQL> alter database open resetlogs; Database altered. ⑩ 昔のログはいらないので削除します [oracle@db1 /]$ cd /opt/app/oracle/product/9.2.0/archive/db1 [oracle@db1 db1]$ ls archive_1_7.log archive_2_12.log [oracle@db1 db1]$ rm ./* [oracle@db1 db1]$ ls [oracle@db1 db1]$ [oracle@db1 db1]$ cd ../db2 [oracle@db1 db2]$ ls archive_1_1.log archive_1_6.log archive_2_12.log archive_2_6.log archive_1_2.log archive_1_7.log archive_2_2.log archive_2_7.log archive_1_3.log archive_2_1.log archive_2_3.log archive_2_8.log archive_1_4.log archive_2_10.log archive_2_4.log archive_2_9.log archive_1_5.log archive_2_11.log archive_2_5.log [oracle@db1 db2]$ rm ./* [oracle@db1 db2]$ ls [oracle@db1 db2]$ ls ⑪ rac2 ノードを起動します。 ⑫ 試しに log switch を強制的に行うと、ログがリセットされ1番から作成されていることが確認できます。 SQL> alter system archive log current; System altered. ⑬ バックアップ制御ファイルを使用してリカバリすると、ローカル管理一次表領域から一次ファイルのエントリが

削除されるため再追加をします。 SQL> alter tablespace temp add tempfile '/opt/app/oracle/oradata/temp' size 100m reuse; Tablespace altered. SQL> select * from v$tempfile; FILE# CREATION_CHANGE# CREATION_ TS# RFILE# STATUS ENABLED ---------- ---------------- --------- ---------- ---------- ------- ---------- BYTES BLOCKS CREATE_BYTES BLOCK_SIZE ---------- ---------- ------------ ---------- NAME -------------------------------------------------------------------------------- 1 0 2 1 ONLINE READ WRITE

Page 31: Linux Oracle9i Real Application Clusters 動作検証 目次図 3-3 Oracle Online APM Install 図 3-4 Oracle RMAN APM Install RMAN については、APM インストール後、モジュールと一緒に含まれているドキュメントに従い、インスタンスを停

________________________________________________ © 2003 BakBone Software – Page(s): 31/31 –

104857600 12800 104857600 8192 /opt/app/oracle/oradata/temp ⑭ reset database により、リカバリカタログをリセットします。 RMAN> reset database; new incarnation of database registered in recovery catalog starting full resync of recovery catalog full resync complete RMAN> list incarnation; List of Database Incarnations DB Key Inc Key DB Name DB ID CUR Reset SCN Reset Time ------- ------- -------- ---------------- --- ---------- ---------- 14 15 RACDB 491106297 NO 85993 12-MAY-03 14 172 RACDB 491106297 YES 134351 12-MAY-03 Inc Key 15 の Cur が NO になっていることを確認します。。 ⑮ オープンできたあとは、必ず再度フルバックアップを実行するようにします。 10. 検証結果について

以上の検証により、NetVault を使用して Oracle9i RAC の環境でオフラインバックアップ、オンラインバックアップ

(Oracle Online APM/Oracle RMAN APM)の運用が可能であることが確認できました。なお、本検証において

使用された NetVault のバージョンおよび各 APM のバージョンは、随時アップデートされております。各自検証お

よび導入を行われる際には、常に最新のバージョンにてご確認いただきますようお願いいたします。