In this Document
APPLIES TO: Oracle Internet Directory - Version 10.1.2 and later Information in this document applies to any platform. ***Checked for relevance on 13-Jan-2014*** SYMPTOMS Provisioning profiles from Applications to OID reporting errors in the trace files with SCAN enabled.
Example: (where MYHOST is the SCAN name) Using Service Name to connect - URL : jdbc:oracle:thin:@MYHOST:1521:ORCL,user : APPS Exception Connecting to DB :java.sql.SQLException: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor The Connection descriptor used by the client was: MYHOST:1521:ORCL
ODIException: 0:ODIException: Exception Connecting to DB :java.sql.SQLException: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor The Connection descriptor used by the client was: MYHOST:1521:ORCL
Exception connecting : java.sql.SQLException: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor The Connection descriptor used by the client was: MYHOST:1521:ORCL
ODI Exception while Initialising PLSQL Reader at oracle.ldap.odip.gsi.PLSQLReader.initialise(PLSQLReader.java:181) at oracle.ldap.odip.prov.ProvAppToOIDSync_2_0.initialise(ProvAppToOIDSync_2_0.java:128) at oracle.ldap.odip.engine.ProvThread.runOldVersion(ProvThread.java:548) at oracle.ldap.odip.engine.ProvThread.run(ProvThread.java:182)
Testing the same connection using a JDBC test the same error "ORA-12505, TNS:listener does not currently know of SID given in connect descriptor" is reported.
However connections are successful outside of OID using sqlplus/tnsnames.ora with SCAN name CHANGES Changed provisioning profile orclodipprofileinterfaceconnectinformation to use a SCAN name rather than the physical or virtual name. CAUSE SCAN will ONLY work with the 11.2 version (Client or Database) If you want to use a process that uses the 11.1 or lower version of the Oracle client, you must connect using the VIP addresses (the normal method)
SCAN is limited to only 11.2 because of certain parts of the code that have to negotiate DNS lookup.
While the 10.2.x.x or 11.1.x.x JDBC driver can connect to an 11.2.0.1 database using a "traditional" connection, those versions do not support SCAN functionality SOLUTION You must connect using the VIP addresses (the normal method). Scan is not supported with version 10g.
可以通过更好应用的jdbc驱动来解决 oracle 对应的JDBC驱动 版本
Oracle 版本
|
jdk版本
|
推荐jar包
|
备注
|
Oracle 8i
|
JDK 1.1.x
|
classes111.zip
|
|
Oracle 8i
|
JDK 1.1.x
|
classes12.zip
|
|
Oracle 9i
|
JDK 1.1.x
|
classes111.jar 或者 classes111.zip
|
|
Oracle 9i
|
JDK 1.2 and JDK 1.3
|
classes12.jar 或者 classes12.zip
|
|
Oracle 9i
|
JDK 1.4
|
ojdbc14.jar
|
|
Oracle 9i
|
JDK 1.5
|
ojdbc5.jar
|
|
Oracle 9i
|
JDK 1.6
|
ojdbc6.jar
|
|
Oracle 10g
|
JDK 1.2 and JDK 1.3.
|
classes12.jar
|
|
Oracle 10g
|
JDK 1.4 and 5.0
|
ojdbc14.jar
|
|
Oracle 11g
|
jdk5
|
ojdbc5.jar
|
|
Oracle 11g
|
jdk6
|
ojdbc6.jar
|
|
如果一个jdbc的jar包你不知道是那个版本的,可以解压这个jar包,再META-INF\MANIFEST.MF 文件中找文件内容如下.
Manifest-Version: 1.0 Ant-Version: Apache Ant 1.6.5 Created-By: 1.5.0_51-b10 (Sun Microsystems Inc.) Implementation-Vendor: Oracle Corporation Implementation-Title: JDBC Implementation-Version: 11.2.0.4.0 Repository-Id: JAVAVM_11.2.0.4.0_LINUX.X64_RELEASE Specification-Vendor: Sun Microsystems Inc. Specification-Title: JDBC Specification-Version: 4.0 Main-Class: oracle.jdbc.OracleDriver sealed: true Name: oracle/sql/converter/ Sealed: false Name: oracle/sql/ Sealed: false Name: oracle/sql/converter_xcharset/ Sealed: false Name: oracle/replay/driver/ Sealed: false
|