用Oracle SQL Developer时出现一个问题问题具体内容如下:
Listener refused the connection with the
following error:
ORA-12514,TNS:listener does not currently know 
of service requested in connect descriptor
供应商代码12514
这个问题我一直在网上找答案,一直找不到合理的解释希望哪位高手
指点一二

解决方案 »

  1.   

    -- Oracle监听没有配置正确!
      

  2.   

    那要怎么样配置啊,我的系统是正版Windows7用的是Oracle11gR2的,但是有时候能正确进入
    有时候就报这个错误请问这到底是怎么回事啊?
      

  3.   

    ORA-12514,TNS:listener does not currently know  
    of service requested in connect descriptor监听器不认识你所要访问的网络服务名。
    这个网络服务名称应在tnsnames.ora文件中配置。
      

  4.   

    Action:
     1 Wait a moment and try to connect a second time. 2 Check which services are currently known by the listener by executing: lsnrctl services <listener name> 3 Check that the SERVICE_NAME parameter in the connect descriptor of the net service name used specifies a service known by the listener. 4 If an easy connect naming connect identifier was used, check that the service name specified is a service known by the listener. 5 Check for an event in the listener.log file.
      

  5.   

    针对这种问题很好解决,1. 一般首先是 tnsping service_name  一把看看是不是通. 通的话大多是至少可以连接2. 那LZ的那个SERVICE_NAME多数就不通了, lsnrctl status 查看 这个service的listener的监听情况, 查看, 是READY, UNKNOW 好还是block状态.  一般是有问题的, 这个service没有被注册在listener里. 这样的话注册一下就可以了 可以用动态注册, alter system set service_name = 'XXX'; 然后alter system register;一把用pmon进程吧这个SERVICE_NAME注册到LISTENER里去。一般这样就可以了。3. 当然还有更复杂的情况, 会碰到block的情况导致service无法访问. 这个情况比较复杂.