Oracle中"listener does not currently know of SID given in connect descriptor"

一次连接数据库怎么也连接不上,查了多方面资料,终于找到答案,总结 

首先应该保证数据库的服务启动 
在myeclipse的数据库视图中点 右键->new 弹出database driver的窗口, 
Driver template选择oracle(thin driver), 
Driver name 输入oracle   
connection URL=jdbc:oracle:thin:@localhost:1521:oracle 注意localhost:1521:oracle中的oracle是数据库得sid换成你自己数据库的sid就可以 
username:登陆数据库具有system权限的用户名 
password:登陆数据库具有system权限的密码 
点击add jar 选择ojdbc14.jar的存放位置,没有得可以到百度下一个叫ojdbc14.jar的文件。 
点击test driver 到此成功配置。 

关于启动数据库后提示ora-12505的解决方法: 
"listener does not currently know of SID given in connect descriptor" 

第一种可能 
是配置得数据库sid名不正确localhost:1521: oracle 即红字部分不是你本机得sid,那么如何查看本机得sid呢?用如下命令 SELECT   NAME   FROM   v$database;在sqlplus中执行就可以看到,把红字部分换成查询出来的sid就可以。 
第二种可能 
发现sid配置没有错误,但是还是报错,那可能就是oracle得监听配置出了问题,需要检查listener.ora文件,用记事本打开, 
正确配置如下: 
# listener.ora Network Configuration File: e:/oracle/product/10.2.0/db_1/network/admin/listener.ora 
# Generated by Oracle configuration tools. 
SID_LIST_LISTENER = 
  (SID_LIST = 
    (SID_DESC = 
      (SID_NAME = PLSExtProc) 
      (ORACLE_HOME = e:/oracle/product/10.2.0/db_1) 
      (PROGRAM = extproc) 
    ) 
    (SID_DESC = 
      (GLOBAL_DBNAME = oracle) 
      (ORACLE_HOME = e:/oracle/product/10.2.0/db_1) 
      (SID_NAME = oracle) 
    ) 
  ) 
LISTENER = 
  (DESCRIPTION_LIST = 
    (DESCRIPTION = 
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) 
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) 
    ) 
  ) 
红字部分改成oracle创建时候的sid 保存退出。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值