- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ORACLE9iのリカバリ方法)
ORACLE9iのリカバリ方法
このQ&Aのポイント
- 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:ファイルが制御ファイルより新しくなっています。-古い制御ファイルです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちわ。 > Windowsの標準機能のバックアップ(バックアップデータには、system stateも > 含んでいます。)からバックアップしておいたデータを復元させました。 このバックアップが、データベースのバックアップとして使用できない方法で 取得された可能性があります。 このバックアップはどのように取得されましたか? データベースのバックアップ方法は、大きく以下の2通りです。 ・DB を停止して全データファイル, 制御ファイル, Redo Log ファイルをバックアップする。 ・アーカイブ運用している前提で、Alter tablespace ~ begin backup を行い 対象表領域をOS コマンドでコピーする。 OS コマンドでのコピーが完了したら、Alter tablespace ~ end backup を行う。 こういった事をせずに、データベース運用中にデータファイル等を単にコピー しただけでは、バックアップとして使用できません。 D ドライブに、全てのデータファイル, 制御ファイル, Redo Log ファイルが格納 されていて、C ドライブ障害時のD ドライブの内容が全てのこっているのであれば、 それらを全て復元してインスタンスを再起動すれば、インスタンス・リカバリが 行われてデータベースがオープンできる可能性があります。
お礼
ご回答ありがとうございます。 まず、バックアップ取得するときに、DBを停止していなかったのがいけなかったみたいです。 余ったPCに、同じような障害が起こったと仮定して、DBを停止して、Cドライブをフォーマット、CドライブにOSをインストールして、Cドライブのみ復元したところ、上手く行きました。