I'm getting an error when trying to JDBC connect to Oracle regarding SID

msmith
Kilo Contributor

I'm getting the following error from my midserver - anyone have any idea's what might be wrong ... The Oracle DB TSA is suggesting that I have to register the SID somewhere.

Do I need to set up the "Probe" for output to get this working?   - Any direction welcome   thx MSA

MID Server reported error: java.sql.SQLException: 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:
oc11d0-scan.devfg.rbc.com:1527:pl00_dev2

oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:261)
oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:441)
oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
java.sql.DriverManager.getConnection(DriverManager.java:664)
java.sql.DriverManager.getConnection(DriverManager.java:208)
com.service_now.mid.connections.jdbc.JDBCConnection.connect(JDBCConnection.java:74)
com.service_now.mid.connections.jdbc.JDBCConnectionFactory.create(JDBCConnectionFactory.java:49)
com.service_now.mid.connections.ConnectionCachePool.getAvailableConnection(ConnectionCachePool.java:79)
com.service_now.mid.connections.ConnectionCache.get(ConnectionCache.java:90)
com.service_now.mid.probe.JDBCProbe.getJDBCConnection(JDBCProbe.java:662)
com.service_now.mid.probe.JDBCProbe.probe(JDBCProbe.java:97)
com.service_now.mid.probe.AProbe.process(AProbe.java:66)
com.service_now.mid.queue_worker.AWorker.runWorker(AWorker.java:104)
com.service_now.mid.queue_worker.AManagedThread.run(AManagedThread.java:36)

com.service_now.mid.probe.JDBCProbe.getJDBCConnection(JDBCProbe.java:666)
com.service_now.mid.probe.JDBCProbe.probe(JDBCProbe.java:97)
com.service_now.mid.probe.AProbe.process(AProbe.java:66)
com.service_now.mid.queue_worker.AWorker.runWorker(AWorker.java:104)
com.service_now.mid.queue_worker.AManagedThread.run(AManagedThread.java:36)

1 ACCEPTED SOLUTION

richfred
Mega Expert

You can resolve this by overwriting the Connect URL string in the Data Source form:


1- Navigate to System Import Sets > Administration > Data Sources


2- Click on the Cog icon right below the filter on the Data Sources List


3- On the personalize List Columns Window, choose Connection URL and move it from the Available to Selected window.


4- Click OK, and now you can see the URL for each entry in the list.


5- Create a new Data Source.


6- Save the new data source record.


7- Back in the Data Source list double-click on the connection URL and replace the default URL with your RAC Database jdbc string:



jdbc:oracle:thin@//oc11d0-scan.devfg.rbc.com:1527/pl00_dev2



Every time you modify this record, it will overwrite the "Connect URL" because there is a business rule that is fired every time a change is made to it; therefore you will have to replace the URL with the RAC string every time this information is changed.  


View solution in original post

12 REPLIES 12

I have also created a FTASK for this: FTASK24154




This is also something you can do: create a new Form for the jdbc Oracle RAC based on the original form. Take these steps after copying the form:


1- Removed the Oracle SID and Port fields.


2- Added the Connection URL to the new form.



Now you can open the new form and insert the jdbc string without having to re-edit it.


I was able to use this workaround when using service name.   But having an issue with multiple hosts.   We are testing with a new server that has multiple hosts/ports, how do I add that to the Connection URL?


msmith
Kilo Contributor

Thank You for your help.... I had almost given up on this being resolved.   I am going to take the items opened and see if i can get any traction on escalating   6 weeks to get resolution is a bit of a challenge when you are operating in an "Agile" project methodology - But I truly appreciate the Community resources who have offered help brian.bush and richfred