java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=186646784)(ERR=12505)(ERR

时间:2024-03-16 11:09:10

连接请求Oracle数据库运行报:
java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=186646784)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:333)
at oracle.jdbc.driver.OracleConnection.(OracleConnection.java:404)
at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:468)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:314)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.util.oracleutils.OracleSelect.main(OracleSelect.java:72)

最后通过查资料发现有两种错误会导致这种错误:

解决过程:

第一种:
我的是Oracle服务关闭了!开启服务就好了…
java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=186646784)(ERR=12505)(ERR

第二种:
查找资料是发现有因为SID错误,报这个错误
大概是连接数据库异常,需要从几个方面检查:
1、数据库的IP地址是否正确?
2、数据库的SID是否正确?
3、数据库的用户名/密码是否正确?
SID可以通过以下语句察看当前数据库的SID:
select INSTANCE_NAME from v$instance;
当前我的Oracle服务名是:
java.sql.SQLException: Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=186646784)(ERR=12505)(ERR

格式:jdbc:oracle:thin:@数据库的IP地址:端口号(Oracle默认1521):服务名SID