- ベストアンサー
パラメータファイルが壊れたときの対応
- Oracle11gをWindowsVistaにインストールし、SQL、PL/SQLの勉強をしている初心者です。ファイル操作の勉強をしようと思い、UTL_FILE_DIRの変更を試みたところ、データベースが起動しなくなってしまいました。
- oradim.logを確認したところ、ORA-01078エラーとLRM-00109エラーが記録されていました。復旧方法がわからず困っています。
- パラメータファイルが壊れたとき、WindowsVistaでOracle11gを使用している場合にデータベースが起動しなくなる問題が発生しました。UTL_FILE_DIRの変更を試みた後、oradim.logにORA-01078エラーとLRM-00109エラーが記録されています。復旧方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
初期化パラメータファイルは制御ファイルのように多重化されておらず、日常のデータベースバックアップでも忘れられがちなので、一度破壊されると復旧は結構厄介です(バイナリのSPFILEともなればなおさら)。 ※以下、テキスト形式のパラメータファイルを"PFILE"、バイナリ形式のパラメータファイルを"SPFILE"と呼びます。 (1)とりあえずSPFILExxxx.ORA(おそらくSPFILEORCL.ORA)をSPFILE.ORA.BAK等にリネームする(バックアップ兼Oracleから認識されないようにする) (2)一度でもデータベースを正常起動したのでしたら、アラートログに「(パラメータファイルから読み込んで)設定した非デフォルトのパラメータ」が列挙されているので、その記述と(1)のSPFILEを元に、PFILE (INITORCL.ORA)を作成し、データベースの起動を試みる(起動できるまでは何度か編集することになりますので、PFILEのまま運用する)。 (3)以後PFILE(INITORCL.ORA)のままで運用されるならこのままでも結構ですが、元通りSPFILEでの運用を希望されるのでしたら、以下のSQL文でSPFILEを再作成します。 CREATE SPFILE FROM PFILE;
その他の回答 (1)
- ishi7474
- ベストアンサー率32% (71/216)
UTL_FILE_DIRの変更を行ったとありますが、どのような方法で行いましたか。INITORCL.ORA(テキストファイル)を編集したのでしたら、知らない間に拡張子が付いていた(INITORCL.ORA.TXTとか)ということはないですか。
お礼
さっそくご回答いただき、感謝しております。 %ORACLE_HOME%\database\SPFILE××.ORAをメモ帳で変更してしまいました。 バイナリなので、やはり大変なことをしてしまった・・・、と思いますが 見かけ上、問題がなかったので楽観していました。 もしこれが原因であれば、spfileを初期化できればありがたいのですが。 お世話になります。
お礼
shi7474 様 おかげ様で無事復旧しました。ありがとうございました。 たまたま正常に起動していたときの、HDのバックアップをとってあったので、 SPFILEをそのまま上書きしたら、起動してくれました。 本当に助かりました。また、復旧方法の詳細も勉強させていただき、 感謝しております。ありがとうございました。