dポイントプレゼントキャンペーン実施中!

ORACLE9iのリカバリ方法を教えてください。

Windows server 2003 R2、Oracle9iを使用しています。

Cドライブにoracleをインストール、Dドライブにoracleのデータを格納しています。


Cドライブのハードディスクが駄目になったので、Cドライブのハードディスクを交換して
Windows server 2003 R2をインストールして
Windowsの標準機能のバックアップ(バックアップデータには、system stateも含んでいます。)からバックアップしておいたデータを復元させました。

ファイル単位のデータや、オラクルのサービスは復旧したのですが、オラクルのテーブルなどが開きません。

SI ObjectBrowserでオラクルを開こうとしたとき、
「ORA-01219:データベースがオープンしていません。固定の表/ビューに対する問合せのみ可能です。」
というメッセージが表示されます。サービスの再起動をしましたが、同じようなエラーがでます。


SQLPLUSで、alter database openのコマンドを入れてデータベースをオープンさせようとしたところ、
次のようなエラーが出てきました。

ORA-01122:データベース・ファイル8の照合検査でエラーが発生しました。
ORA-01110:データ・ファイル8:'D:ORACLE^ORADATA\SFRES\USER01.DBF'
ORA-01207:ファイルが制御ファイルより新しくなっています。-古い制御ファイルです。


どなたか、解決方法をご存知の方、ご教授ください。

A 回答 (1件)

こんにちわ。



> Windowsの標準機能のバックアップ(バックアップデータには、system stateも
> 含んでいます。)からバックアップしておいたデータを復元させました。
このバックアップが、データベースのバックアップとして使用できない方法で
取得された可能性があります。
このバックアップはどのように取得されましたか?

データベースのバックアップ方法は、大きく以下の2通りです。
・DB を停止して全データファイル, 制御ファイル, Redo Log ファイルをバックアップする。
・アーカイブ運用している前提で、Alter tablespace ~ begin backup を行い
 対象表領域をOS コマンドでコピーする。
OS コマンドでのコピーが完了したら、Alter tablespace ~ end backup を行う。

こういった事をせずに、データベース運用中にデータファイル等を単にコピー
しただけでは、バックアップとして使用できません。

D ドライブに、全てのデータファイル, 制御ファイル, Redo Log ファイルが格納
されていて、C ドライブ障害時のD ドライブの内容が全てのこっているのであれば、
それらを全て復元してインスタンスを再起動すれば、インスタンス・リカバリが
行われてデータベースがオープンできる可能性があります。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

まず、バックアップ取得するときに、DBを停止していなかったのがいけなかったみたいです。

余ったPCに、同じような障害が起こったと仮定して、DBを停止して、Cドライブをフォーマット、CドライブにOSをインストールして、Cドライブのみ復元したところ、上手く行きました。

お礼日時:2011/05/22 23:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す