连接oracle数据库报错:ORA-12505
今天在使用程序连接oracle数据库时本来很简单的填写url,用户名和密码,测试连接提示失败。和pl_sql 对比了下写的也没毛病,有图为证:
看了下数据库地址端口和用户名密码都没问题,打开数据日志看到报错:
listener does not currently know of SID given in connect descriptor
说是sid错误,经过查询明白:jdbc在连接数据库时,只需要使用sid_name,而不是数据库的services_name。而使用pl/sql连接数据库时使用的是services_name也就是别名即可,
所以把填写url中的服务名改为service_name就行了。具体方法为:
- 在环境变量中的oracle_home中找到oracle的位置,进入这个文件夹——network——ADMIN——tnsnames.ora中找到需要连接的数据库实例名
- 利用plsql命令查询:select instance_name from v$instance
所以,拿到正确的服务名之后再进行测试
完,完美。。。。