ひでっぷの技術メモ

はてなダイアリーから移行しました

Oracle8i自動起動しない。またORA-01034が返る

Oracle8iにかなり悩まされています。
DBは客先が用意するものなのでここで時間をとるわけにはいかないのですが、知らぬ存ぜぬではだめだし、今後Oracleの仕事も来るだろうからしっかりやっておかないとな・・・。

WindowsにてOracle8iが自動起動しない。
サービス内で開始中のままで止まってしまう。

またもやOracleのバグです。
簡単に解決方法を書いておきます。

SID は ORCL、internalパスワードは oracle とした場合の例です。
(internalパスワードはWindowsのAdmin権限のパスワードです。)

(1) OracleServiceORCLサービスのスタートアップの種類を『自動』から
  『手動』に変更

(2) レジストリ内のORA_ORCL_AUTOSTARTキーの値を『TRUE』から
  『FALSE』に変更

(キーの場所)
  HKEY_LOCAL_MACHINE
SOFTWARE
ORACLE
HOME0
ORA_ORCL_AUTOSTART


(3) 以下の2種類のテキストファイルを任意のフォルダに作成

  orastart.bat:

   @Echo off
  net start OracleServiceORCL
  svrmgrl @\startup.sql
  exit

  startup.sql:

  connect internal/oracle
  startup
  exit

*はstartup.sqlを置いたフルパスを設定します。

(4) (3)で作成したorastart.batのショートカットをスタートメニューの
  スタートアップ・グループに登録

このサイトのコピペです。万が一にもなくなるといけないので念のためコピペ・・・

これでなんとか起動するようになったのですが、その後接続しようとしてもなぜか

ORA-010304 oracle not available

が出る。
いろんなサイト調べたけど、Oracleが起動してないとしか書いてないし・・・。(起動してるんですけど)

Oracle Administration Assistant for Windows NTでも起動/停止はできるが接続ができない。
しばらくほっておくと1つのDBは接続できるようになった(なんでや?)
でも、OSを再起動するとまただめになるみたい・・・。

もうやけくそだーってことで、Database Configration Assistantでデータベース構成の変更をしてみた。
(よっぽど削除して作り直そうかと思ったけど作成が時間かかるんだこれが・・・。)

そしたら2つとも接続できるようになった・・・。
いったいなんなんだ?Oracleよー