現象
- dbca で生成したスクリプトを実行してデータベースを作成すると、emConfig.log に ORA-12514 が出力される。
2011/05/06 16:29:38 oracle.sysman.emcp.ParamsManager checkListenerStatusForDBControl 設定: ORA-12514: TNS: リスナーは接続記述子でリクエストされたサービスを現在認識していません oracle.sysman.assistants.util.sqlEngine.SQLFatalErrorException: ORA-12514: TNS: リスナーは接続記述子でリクエストされたサービスを現在認識していません at oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeImpl(SQLEngine.java:1530) at oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeSql(SQLEngine.java:1771) at oracle.sysman.emcp.ParamsManager.checkListenerStatusForDBControl(ParamsManager.java:2682) at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:368) at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:147) at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:222) at oracle.sysman.emcp.EMConfigAssistant.invokeEMCA(EMConfigAssistant.java:535) at oracle.sysman.emcp.EMConfigAssistant.performConfiguration(EMConfigAssistant.java:1215) at oracle.sysman.emcp.EMConfigAssistant.statusMain(EMConfigAssistant.java:519) at oracle.sysman.emcp.EMConfigAssistant.main(EMConfigAssistant.java:468) 2011/05/06 16:29:38 oracle.sysman.emcp.EMConfig perform 致命的: リスナーが起動していません。リスナーを起動して、EM Configuration Assistantを再度実行してください。 詳細は、C:\app\Administrator\admin\\scripts\emConfig.logにあるログ・ファイルを参照してください。 2011/05/06 16:29:38 oracle.sysman.emcp.EMConfig perform 設定: Stack Trace: oracle.sysman.emcp.exception.EMConfigException: リスナーが起動していません。リスナーを起動して、EM Configuration Assistantを再度実行してください。 at oracle.sysman.emcp.ParamsManager.checkListenerStatusForDBControl(ParamsManager.java:2689) at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:368) at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:147) at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:222) at oracle.sysman.emcp.EMConfigAssistant.invokeEMCA(EMConfigAssistant.java:535) at oracle.sysman.emcp.EMConfigAssistant.performConfiguration(EMConfigAssistant.java:1215) at oracle.sysman.emcp.EMConfigAssistant.statusMain(EMConfigAssistant.java:519) at oracle.sysman.emcp.EMConfigAssistant.main(EMConfigAssistant.java:468)
原因
- EM Configuration Assistant からリスナーに接続できなかったため。具体的には、postDBCreation.sql の以下の箇所でリスナーに接続しようとして失敗したため。
host C:\app\Administrator\product\11.1.0\db_1\bin\emca.bat -config dbcontrol db -silent -DB_UNIQUE_NAME ORCL -PORT 1522 -EM_HOME C:\app\Administrator\product\11.1.0\db_1 -LISTENER LISTENER -SERVICE_NAME ORCL -SYS_PWD &&sysPassword -SID ORCL -ORACLE_HOME C:\app\Administrator\product\11.1.0\db_1 -DBSNMP_PWD &&dbsnmpPassword -HOST db01 -LISTENER_OH C:\app\Administrator\product\11.1.0\db_1 -LOG_FILE C:\app\Administrator\admin\\scripts\emConfig.log -SYSMAN_PWD &&sysmanPassword;
対処
リスナーのポート番号をデフォルトの 1521 から 1522 に変更したため以下のいずれかを行う必要がある。今回は前者の対処を行った。
-
- listener.ora に静的にサービスを設定する
- 初期化パラメータ LOCAL_LISTENER を明示的に設定する
具体的な対処内容は以下の通り。
- listener.ora に以下を追記する。
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = ORCL) (ORACLE_HOME = C:\app\Administrator\product\11.1.0\db_1) (SID_NAME = ORCL) ) )
- リスナーを起動する。
> lsnrctl start
- EM Configuration Assistantを再度実行する。
C:\Users\Administrator>C:\app\Administrator\product\11.1.0\db_1\bin\emca.bat -config dbcontrol db -silent -DB_UNIQUE_NAME -PORT 1522 -EM_HOME C:\app\Administrator\product\11.1.0\db_1 -LISTENER LISTENER -SERVICE_NAME -SYS_PWD manager -SID -ORACLE_HOME C:\app\Administrator\product\11.1.0\db_1 -DBSNMP_PWD manager -HOST WIN-ZTAE8I9QKM8 -LISTENER_OH C:\app\Administrator\product\11.1.0\db_1 -LOG_FILE C:\app\Administrator\admin\ORCL\scripts\emConfig2.log -SYSMAN_PWD manager EMCAの開始 2011/05/06 17:51:35 EM Configuration Assistant, リリース11.1.0.7.0 Production Copyright (c) 2003, 2005, Oracle. All rights reserved. (中略) *********************************************************** Enterprise Managerの構成が正常に完了しました EMCAの終了 2011/05/06 17:54:59