こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ORACLE9iのリカバリ方法

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:ファイルが制御ファイルより新しくなっています。-古い制御ファイルです。


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

投稿日時 - 2011-05-18 21:24:57

QNo.6747068

すぐに回答ほしいです

質問者が選んだベストアンサー

こんにちわ。

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

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

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

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

投稿日時 - 2011-05-19 21:18:49

お礼

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

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

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

投稿日時 - 2011-05-22 23:47:01

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問