ページ

2011年10月26日

Ubuntu 11.04に入れたOracle XE 11gを11.10で動かす方法

Ubuntu 11.04にOracle XE 11gに入れて、Ubuntuを11.10にバージョンアップすると、Oracleは動かなくなります。このフォーラムによると、バイナリエディタでバイナリを書き換えれば大丈夫だよ、って恐ろしいことを書いています。ありえないです。なので、会社の@buzztaikiの指導のもと、動くようにしました。

症状
まず、11.10にアップグレードした状態でsqlplusで接続すると
ERROR:
ORA-12514: TNS:
リスナーは接続記述子でリクエストされたサービスを現在認識していません


ユーザー名を入力してください:
と表示されます。oracleユーザになって、sqlplus / as sysdbaとすると、
アイドル・インスタンスに接続しました。
と表示されます。そのままstartupと実行すると
ORA-00845: MEMORY_TARGET not supported on this system
とエラーになります。

対策
sqlplus / as sysdbaで接続して、次の文を実行します。
create pfile='/tmp/iyan.pfile' from spfile;
/tmpにiyan.pfileが出来ているので、*.memory_targetの値を0に変更して保存します。sqlplus / as sysdbaで接続して、次を実行して起動できるか確認します。
startup pfile='/tmp/iyan.pfile'
無事起動できたら、shutdown immediateして一旦、Oracleを落とします。そして、次を実行します。
create spfile from pfile='/tmp/iyan.pfile';
さて、これでstartupすると、ちゃんと起動できます。めでたしめでたし。

でわでわ

0 件のコメント: