上記の解決法を望んだところ、
SQL> connect /as sysdba
アイドル・インスタンスに接続しました。
SQL> startup
ORACLEインスタンスが起動しました。
Total System Global Area 213909504 bytes
Fixed Size 1258052 bytes
Variable Size 159387068 bytes
Database Buffers 50331648 bytes
Redo Buffers 2932736 bytes
ORA-00201: ????????????10.2.0.1.0?ORACLE?????10.2.0.0.0??????????
ORA-00202: ??????: '/usr/lib/oracle/xe/oradata/XE/control.dbf'
このようなエラーが表示されてしまいました。
control.dbf はinitxe.orで設定しました。
上記を見る限りバージョン違い?のようなエラーですが、IP変えただけなので・・・
これに関してどなたかご教授願えませんでしょうか?
ORA-00201: 制御ファイルのバージョンstringにはOracleバージョンstringとの互換性がありません。
原因: 制御ファイルが互換性のないソフトウェアによって作成されました。
処置: 互換性のあるソフトウェア・リリースで再起動するか、またはCREATE CONTROLFILEを使用して、このリリースと互換性のある新規の制御ファイルを作成してください。
ORA-00202: 制御ファイル: 'string'
原因: 他のエラー・メッセージに関連するファイル名です。
処置: 問題の説明については、関連するエラー・メッセージを参照してください。
定番的な回答で申し訳ないのですが、とりあえず
CREATE CONTROLFILE で制御ファイルを作り直ししてみてください。
ファイルのパス名から読み取れるRACLE_SIDは「XE」と大文字なのに、initxe.oraでのORACLE_SIDは「xe」と小文字で不自然ですね。
やはり元々は、
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/dbs/initXE.ora (initXE.oraのXEが大文字)
というファイルがあったのに、それがなくなってしまったことが事の発端のように思います。
どうしてこのような状況になってしまったのかわかりませんが、
http://otn.oracle.co.jp/forum/thread.jspa?threadID=35000591&star...
の最後の情報は参考になりませんか?
ところで、OSのrootユーザーで、
/etc/init.d/oracle-xe start
あるいは
service oracle-xe start
とやってもダメですかね?(initXE.oraが無いというお話しなので、きっとダメなんだろうとは思いますが…)
ほんとに度々申し訳ない。
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/dbs/spfileXE.ora
というファイルは存在しませんか?
もし存在すれば、やはりORACLE_SID環境変数を大文字で「XE」にするか、直前に書いたrootで起動する方法で行けるはずですが。
たびたびありがとうございます。
ただ、環境変数を変更しても無理でした。
他のページを参照したものでやったところ、なんとかうまくいきました。
回答ありがとうございます。
作り直してみましたが、なぜかうまくいきませんでした