最近突然发现oracle10g在sqldeveloper在发现ORA-12514: TNS: 监听进程不能解析在连接描述符这个错误,而在sqlplus下却可以正常登陆。解决方法:

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!