Oracle10g 监听服务已启动报ora12154错误

本机安装了Oracle 10g当做数据库服务器,跑了一周正常,不知道是分配的ip主机上也安装了oracle冲突了还是什么原因,突然出现ora12514无法监听错误,查看服务发现监听都已启动状态。


解决方法:
1. 打开<OracleHome>/network/admin/listener.ora文件,找到:

   SID_LIST_LISTENER =
   (SID_LIST =
     (SID_DESC =
       (SID_NAME = PLSExtProc)
       (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
       (PROGRAM = extproc)
     )
   )
  2. 添加:
            (SID_DESC =
       (GLOBAL_DBNAME = ORACLE全局数据库名)
       (ORACLE_HOME = D:\oracle\product\10.2.0\db_1) 
       (SID_NAME = ORACLE实例名)
      )
  3. 最后变成:
 SID_LIST_LISTENER =
   (SID_LIST =
     (SID_DESC =
       (SID_NAME = PLSExtProc)
       (ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
       (PROGRAM = extproc)
     )
     (SID_DESC =
       (GLOBAL_DBNAME = ORACLE)
       (ORACLE_HOME = D:\oracle\product\10.2.0\db_1) 
       (SID_NAME = ORACLE)
      )
   )
  4. 保存文件,重启服务中的TNSListener,OK!
  解决办法2:把listener.ora和tnsnames.ora文件中的HOST = localhost(或本机器的IP)改成自己的计算机名,比如:HOST = poscard

同样需要保存重启服务中的 TNSListener。

posted @ 2012-11-06 12:23  大胡子荷西  阅读(415)  评论(0编辑  收藏  举报