今天在工作中配置plsqldev时,报错误是找不到服务名
同时给我的信息看似没有错误,研究半天发现是SID 给我的 qhltkf1是错误的。正确的是qhltkf
后来在配置TOMATE是报错误ORA-12505。
很是郁闷,咋在plsqldev可以登录在TOMAT不能登录,SID没错误。
在网上参考解决方式:
==========================================================
ORA-12505:
之前用PL/SQL DEVELOPER和SQLPLUS 登录数据库都没有问题,就是应用程序通过JDBC连接Oracle时无法成功连接,出现ORA-12505错误listener does not currently know of SID given in connect descriptor......。
经过查找,发现Oracle的service_name 和sid_name不一致,而PL/SQL DEVELOPER和SQLPLUS 采用service_name进行连接,而应用程序是按照sid_name进行连接,所以出现PL/SQL DEVELOPER和SQLPLUS 能够连接而应用程序却无法连接的问题。
解决问题很简单,首先查找当前实例的sid_name:SELECT INSTANCE_NAME FROM V$INSTANCE,然后把得到的sid_name填入应用程序的连接串中。
====================================================
找了个DBA权限的用户执行以下
SELECT INSTANCE_NAME FROM V$INSTANCE
查询的信息竟然是qhltkf1。
将TOMCAT修改文件SID为qhltkf1就正常。
按照工作习惯plsqldev可以正常登录,tomat配置就不会有问题,是错误的。
后来想了想,在做双机后就会出现此类问题。
同时给我的信息看似没有错误,研究半天发现是SID 给我的 qhltkf1是错误的。正确的是qhltkf
后来在配置TOMATE是报错误ORA-12505。
很是郁闷,咋在plsqldev可以登录在TOMAT不能登录,SID没错误。
在网上参考解决方式:
==========================================================
ORA-12505:
之前用PL/SQL DEVELOPER和SQLPLUS 登录数据库都没有问题,就是应用程序通过JDBC连接Oracle时无法成功连接,出现ORA-12505错误listener does not currently know of SID given in connect descriptor......。
经过查找,发现Oracle的service_name 和sid_name不一致,而PL/SQL DEVELOPER和SQLPLUS 采用service_name进行连接,而应用程序是按照sid_name进行连接,所以出现PL/SQL DEVELOPER和SQLPLUS 能够连接而应用程序却无法连接的问题。
解决问题很简单,首先查找当前实例的sid_name:SELECT INSTANCE_NAME FROM V$INSTANCE,然后把得到的sid_name填入应用程序的连接串中。
====================================================
找了个DBA权限的用户执行以下
SELECT INSTANCE_NAME FROM V$INSTANCE
查询的信息竟然是qhltkf1。
将TOMCAT修改文件SID为qhltkf1就正常。
按照工作习惯plsqldev可以正常登录,tomat配置就不会有问题,是错误的。
后来想了想,在做双机后就会出现此类问题。