您的位置:首页 > 数据库

使用JDBC连接虚拟机数据库时遇到的问题

2010-01-19 10:28 686 查看
Oracle
问题描述:
今天使用jdbc连接虚拟机数据库的时候出现了下列错误:

Connection refused(DESCRIPTION=(TMP=)(VSNNUM=153093120)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))

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

经过debug和查找相关的资料发现问题原因如下:
jdbc连接数据库的时候,需要使用数据库的sid_name,而不是数据库的services_name
而使用plsql连接数据库的时候,只需要数据库的services_name即可,所以修改连接字符串中的services_name 为sid_name

附:
察看数据库中当前的sid:

SQL> select INSTANCE_NAME from v$instance;

INSTANCE_NAME
----------------
ocsora

开始错误连接:

<property name="url">
<value>jdbc:oracle:thin:crm/crm@//192.168.85.3/:1521/my_vm_db</value>

</property>

后面改成sid_name连接:

<value>jdbc:oracle:thin:@192.168.85.3:1521:ocsora</value>
就可以正常访问数据库了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: