20120326——“TNS-12541: TNS:无监听器”&ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务

----   TNS-12541   begin -----

这个问题大家应该常遇到。今天我也遇到了,网上搜了一下 。我出现的问题,是本机PL/SQL 连接没有问题,但是 远程就连接不上。

问题解决:

listener.ora 文件中 
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))  改为IP 就可以了。

网上的解决方式:

 

1,   ping     xxx.xxx.xxx.xxx     看Ip通不
2,netstat   -an   看端口1521或者其他凯没有
3,   LSNRCTL.EXE   status     看监听器的状态,可以重新设置监听器
4,tnsping   oracleservicename   看服务配置正确不

加上一条,我的算第五条吧,用排除法一个一个来弄了。

参考 :http://topic.csdn.net/t/20060310/11/4605467.html

 

----   TNS-12541   end-----

 

 

----   ORA-12514   begin  ----

下午,一个同事从公司借的笔记本上面的Oracle数据库出现连接不上的问题,一直报:

    ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
    从字面判断是监听器的错误,于是重新配置了监听器,重启监控器服务,还是不能解决问题。
    最后与正常的Oracle机上的listener.ora比较了一下,比对结果如下:
非正常Oracle配置:
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (PROGRAM = extproc)
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = E:\Server\oracle\product\10.2.0\db_1)
    )
  )
正常Oracle配置
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = ORCL)
      (ORACLE_HOME = E:\Server\oracle\product\10.2.0\db_1)
      (SID_NAME = ORCL)
    )

    (SID_DESC =
      (PROGRAM = extproc)
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = E:\Server\oracle\product\10.2.0\db_1)
    )

  )
    上面已经用红色字体标示出来了,同事机器上的监听器配置文件中,SID列表中没有本地数据库配置。于是将数据库添加到SID列表中,重启监听器,一切正常喽。

 

 

----   ORA-12514     end-----

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值