ORA-12514: TNS : 监听程序当前无法识别连接描述符中请求的服务_监听程序不支持服务

使用PL/SQL Developer 工具连接 oracle 11g ,当使用用户登录时报错:
   ORA-12514: TNS : 监听程序当前无法识别连接描述符中请求的服务_监听程序不支持服务
  
  解决办法:
一般提示监听程序无法识别,有两种情况。一种是你安装完后未配置监听,这种情况较少;第二种是之前配置了监听但是系统未写入
listener.ora文件中,只要在该文件中写入配置参数就能解决问题了。

 修改listener.ora文件(F:appzangproduct11.2.0dbhome_1NETWORKADMIN),由于安装位置不一样,路径会有不同,但基本会在product11.2.0dbhome_1NETWORKADMIN路径下。

ORA-12514: TNS : 监听程序当前无法识别连接描述符中请求的服务_监听程序不支持服务

要修改的部分如下

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = F:appzangproduct11.2.0dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:F:appzangproduct11.2.0dbhome_1inoraclr11.dll")
    )

)

在上面空出一行的地方插入如下内容(注意sid要根据自己安装时的的改写,我这里是orcl, 在SID_DESC中写入oracle的地址)

     (SID_DESC = 
      (GLOBAL_DBNAME = orcl) 
      (ORACLE_HOME = F:appzangproduct11.2.0dbhome_1) 
      (SID_NAME = orcl) 
    ) 

添加完之后内容如下

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = F:appzangproduct11.2.0dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:F:appzangproduct11.2.0dbhome_1inoraclr11.dll")
    )
     (SID_DESC = 
      (GLOBAL_DBNAME = orcl) 
      (ORACLE_HOME = F:appzangproduct11.2.0dbhome_1) 
      (SID_NAME = orcl) 
    ) 
  )

ORA-12514错误改好了之后需要重启数据库才能生效。