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的情况下可以使用第二种连接方式

参考:https://blog.csdn.net/a932946893/article/details/113374715

你可能感兴趣的:(SpringBoot,Oracle,spring,boot,oracle)