我的数据库是oracle 10g服务器端,用sqlplus可以正常登陆。但是,用plsql develper登陆的时候报错,报错如下:
ORA-12514:TNS:listener does not currently know of service requested in connect descriptor在控制面板中,
启动OracleCSService服务正常;启动OracleDBConsoleorcl服务出现如下提示信息,不能启动:Windows 不能在本地计算机启动OracleDBConsoleorcl。有关更多信息,查阅系统事件日志。如果这是非Microsoft服务,请与服务厂商联系。
OracleOraDb10g_home1iSQL*Plus服务,OracleOraDb10g_home1Db10g_home1SNMPPeerEncapsulator服务,OracleOraDb10g_home1SNMPPeerMasterAgent服务,OracleOraDb10g_home1TNSListener服务,OracleServiceORCL服务,可以正常启动。OracleJobSchedulerORCL服务,按照安装时候的默认,设置为禁用。在Java程序中连接数据库的时候,出现如下的错误:
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
127.0.0.1:1521:orcl

解决方案 »

  1.   

    希望哪位高手能够出来指点一下我,我因为这个错误都重新装了一个Oracle了,但是这个新的又出错了
      

  2.   

    等不及了,自己在网上好好搜了一下,
    把oracle\product\10.1.0\Db_1\NETWORK\ADMIN下的listener.ora修改为:
    # listener.ora Network Configuration File: F:\oracle\product\10.1.0\Db_1\network\admin\listener.ora
    # Generated by Oracle configuration tools.SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = F:\oracle\product\10.1.0\Db_1)
          (PROGRAM = extproc)
        )
        (SID_DESC=
    (GLOBAL_DBNAME=ORCL)
    (ORACLE_HOME = F:\oracle\product\10.1.0\Db_1)
    (SID_NAME=ORCL)
        )
      )
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
          )
          (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
          )
        )
      )修改完保存,重新启动一下监听服务,OK
      

  3.   

    http://blog.csdn.net/smh821025/archive/2009/01/17/3819179.aspx