Oracle 起動に関するエラー

ORA-12514: TNS: リスナーは接続記述子で要求されたサービスを現在認識していません。

  • 原因

リスナーへのサービスの登録を動的構成をして ORA-12514:〜エラーが発生する場合には インスタンスとリスナーの情報の同期が取れていない可能性がある。 動的構成の場合にはインスタンスは起動時や定期的にリスナーに自分のサービスの情報や負荷の状況を PMON 経由で通知する。

このときにリスナーが起動されていない場合や通信が途絶している状態になるとサービスしていることがリスナーに伝わらない。(登録の遅延は最大で 60秒とある)

  • 対応(動的登録、自動登録の場合)
# lsnrctl service または
# lsnrctl stat

で 接続しようとしているサービスが無いことを確認する。もしサービスが存在する場合には接続文字列(ネーミングメソッド)や TNSNAMES.ORA の記述に誤りがある可能性がある。

リスナーにサービスが無い場合には、リスナーへのサービスの自動登録が無効になっているか遅延している。
遅延している場合には

# sqlplus / as sysdba
SQL> alter system register ;

の操作によって自動登録のタイミングを手動で発生させることができる。リスナー登録できなくても実行時エラーにならないので リスナーのコマンドでサービスが登録されていることを必ず確かめる。

  • 対応(静的登録の場合)

listener.ora の記述で誤りがないか調べる。
全角スペースが混じっていたり、記述内には括弧が非常に多いので括弧の始まりと終わりが正しい位置なのかを再確認する。

 


類似するエラー

関連事項

 

一覧ページへ戻る

OTN (Oracle Technology Network)によるエラーメッセージによる情報だけでは、対処に困ったエラーについてのプラクティスです。
ベスト・プラクティスというわけではないので、書いてあることに固執しないで広い視野でエラー対応してください。

ORA-12514の関連トピックス

日本オラクル
■ 日本オラクル 株式会社
■ オラクルマスター資格 (オラクルマスターとは
■ Oracle のライセンスがわからない…
Oracle Direct (ネットで聞いても最後はここで要確認)