您的位置:首页 > 数据库 > Oracle

JDBC连接Oracle数据库时出现的ORA-12505错误及解决办法

2014-07-11 15:42 591 查看
问题描述:

今天使用jdbc连接oracle 10.2.0.1.0
数据库的时候

url:jdbc:oracle:thin:@localhost:1521:ORCL_PRO

出现了下列错误:

ORA-12505, TNS:listener does not currently know of SID given in connect descriptor The Connection descriptor used by the client was:

localhost:1521:orcl_project

而直接通过plsql可以正常连接数据库,或者可以通过sqlplus 连接数据库

经过debug和查找相关的资料发现问题原因如下:

jdbc连接数据库的时候,需要使用数据库的sid_name,而不是数据库的services_name

而使用plsql连接数据库的时候,只需要数据库的services_name即可,所以修改连接字符串中的services_name 为sid_name

而我们通常在Oracle Net Manager中看到的数据库实例名都为services_name(我的是ORCL_PRO,误以为是SID了)

附:

察看数据库中当前的sid:

SQL> select INSTANCE_NAME from v$instance;

orclproject
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: