springboot连接oracle报错ORA-12505解决方案

springboot连接oracle报错ORA-12505解决方案


springboot项目,在测试环境连接正常,生产环境连接数据库报错ORA-12505。

测试环境连接数据库语句为jdbc:oracle:thin:@xxxx.xxxx.xxxx.xxxx:1521:orcl
生产环境修改对应ip后报错ORA-12505, TNS:listener does not currently know of SID。

百度查询jdbc连接数据库的时候,需要使用数据库的sid_name,
参考文章:https://blog.csdn.net/qq_38050852/article/details/83151095
但是由于生产环境只开放了部分视图权限,执行查询sid语句select INSTANCE_NAME from v$instance;报错找不到表或视图,只好另寻解决方案。

经过尝试,最后将:orcl部分改为/orcl解决,即jdbc:oracle:thin:@xxxx.xxxx.xxxx.xxxx:1521/orcl

问题原因: jdbc:oracle:thin:@xxxx.xxxx.xxxx.xxxx:1521:orcl该连接方式:后面需跟上sid_name;
jdbc:oracle:thin:@xxxx.xxxx.xxxx.xxxx:1521/orcl而这种连接方式/后面需填入server_name;
在无法查询sid的情况下可以使用第二种连接方式

你可能感兴趣的:(java,数据库,oracle)