Oracle11g中---SqlPlus可以正常登陆,sqlDeveloper无法登录



首先是用系统用户名sys在sqlplus上可以正常登陆,可是当打开sqldeveloper用sys用户时报错提示【listener refused the connection with the following errir:ORA-12505】

当时就好奇,难道是监听服务没打开?于是去看了下服务。发现全打开了。网上找了好久,终于找到了解决方法!

首先找到你的安装位置下listener.ora的位置:E:\oracle\product\10.2.0\db_1\network\admin\listener.ora

打开是这样的
# listener.ora Network Configuration File: E:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = )   
      (ORACLE_HOME = E:\app\Administrator\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:E:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )

  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = E:\app\Administrator

修改为如下
# listener.ora Network Configuration File: E:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = ORCL)   
	(GLOBAL_DBNAME = ORCL)   
      (ORACLE_HOME = E:\app\Administrator\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:E:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )

  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = E:\app\Administrator

红色字体的为新添加的,完了之后保存,之后把oracle开了的服务全部重新启动一下,打开sqldevelope软件,用sys用户登录可以正常登入了。

之后过了几天,重启电脑打开sqldevelope用sys登录又报了另一个错误【提示无法从套接字获取更多数据】
发现还是那个文件有问题E:\oracle\product\10.2.0\db_1\network\admin\listener.ora
解决方法是↓
# listener.ora Network Configuration File: E:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = ORCL)   
	#(GLOBAL_DBNAME = ORCL)   
      (ORACLE_HOME = E:\app\Administrator\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:E:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )

  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = E:\app\Administrator
把红色这段注释掉加个#就可以了。
然后把关于oracle所有的服务都重新启动就可以用sqldevelope软件sys登录了!

文章出处http://blog.csdn.net/mdifferent/article/details/7887832 

发布了1 篇原创文章 · 获赞 2 · 访问量 1082

猜你喜欢

转载自blog.csdn.net/qq_36783524/article/details/73554842