今天生产上项目启动访问 一个数据库的时候,出现了
ora-12505, tns:listener does not currently know of sid given in connect desc .
后面看了下,我的数据库配置为:
driverclassname=oracle.jdbc.driver.oracledriver url=jdbc:oracle:thin:@158.58.88.102:1521:eskdb username=root password=aaa111
然后看了下oracle
的 tnsnames.ora
配置
eskdb=(description =(address_list =(address = (protocol = tcp)(host = 158.58.88.102)(port = 1521)))(connect_data =(service_name = eskdb)))
按网上所说的道理:
1、最后的orcl是数据库名称,我数据库名称就是eskdb,但是不对
2、最后的orcl是 service_name 但是配置的service_name 也是 eskdb
最后纠结无语,找数据库dba帮忙, dba帮忙找到sid为 eskdb1 , 而且异常提示sid不对,于是更改url为
url=jdbc:oracle:thin:@158.58.88.102:1521:eskdb1
然后重启项目,ok了
得出结论:
数据库url连接最后一个orcl代表的是配置的数据库sid
,而不是数据库名 或者service_name
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对移动技术网的支持。如果你想了解更多相关内容请查看下面相关链接
如对本文有疑问, 点击进行留言回复!!
Oracle 基本概念 Dadabase,schema,user,table...
dbeaver连接Oracle中文乱码的解决方案--druid
Oracle常用语句(时间格式、去重、去特殊符号、查询表空间等)
Navicate 如何导出数据库中的存储过程、事件、视图等?
每日一记:Oracle升级2020年4月份的数据库补丁Database Patch Set Update : 11.2.0.4.200414 (30670774)
Oracle 19.3 dataguard for Redhat 7.6
网友评论