我正在嘗試在coldfusion v 10 std服務器上建立一個到oracle數據庫的jdbc-oci連接。coldfusion v 10 std無法通過jdbc oci驅動程序連接到oracle
使用jdbc oci的原因是加密應用程序服務器和數據庫之間的數據流的必要性(通過使用sqlnet.ora中的常用設置)。但是,不管我們嘗試什麼語法,基於服務 和基於tnsnames的jdbc url都不起作用。在保存(並自動測試)連接後,立即用「java.sql.SQLException:超時嘗試建立連接」出現coldfusion錯誤。
看起來很奇怪,可能發生了超時,因爲錯誤總是會立即拋出。因此,我認爲沒有建立連接的另一個根本原因。
有什麼想法嗎?
請注意,除了coldfusion之外,我們使用控制檯應用程序模擬連接建立,但成功使用相同的jvm和jdbc驅動程序。它因此似乎不是一個jvm或驅動程序或oci.dll 相關的問題。
數據源設置:
- 驅動程序類:
oracle.jdbc.driver.OracleDriver
- JDBC URL(使用的tnsnames.ora):
jdbc:oracle:oci:@<theName>
- JDBC URL(使用IP,端口,服務):
jdbc:oracle:oci:@//<IP>:1521/<SID>
- 驅動程序類:
錯誤消息:
- 連接驗證失敗的數據源:theName
值java.sql.SQLException:超時試圖建立連接
的根本原因是:值java.sql.SQLException:超時試圖建立連接
- 連接驗證失敗的數據源:theName
環境:
- ojdbc6司機生活在一個目錄中已知的ColdFusion
- oci.dll位於系統路徑變量已知的目錄中,由sysinternals processexplorer在ColdFusion服務
- 上對JDBC URL(使用tnsnames.ora)進行驗證,包含tnsnames.ora的目錄被稱爲系統變量TNS_ADMIN通過Sysinternals的processexplorer上ColdFusion服務
- 用的tnsnames.ora沿證實存在一種包括設置在數據加密切換sqlnet.ora文件
堆棧跟蹤:
A中沒有在從「datasource-name here」請求連接時發生n-SQL錯誤。 超時試圖建立連接
Exception in thread "Thread-2120" java.lang.UnsatisfiedLinkError: no ocijdbc11 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
at java.lang.Runtime.loadLibrary0(Runtime.java:845)
at java.lang.System.loadLibrary(System.java:1084)
at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:3560)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3556)
at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:269)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:553)
at oracle.jdbc.driver.T2CConnection.<init>(T2CConnection.java:165)
at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:53)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:528)
at coldfusion.server.j2ee.sql.pool.JDBCPool.createPhysicalConnection(JDBCPool.java:614)
at coldfusion.server.j2ee.sql.pool.ConnectionRunner$RunnableConnection.run(ConnectionRunner.java:67)
at java.lang.Thread.run(Thread.java:722)
A non-SQL error occurred while requesting a connection from "datasource-name here".
Timed out trying to establish connection
[Fatal Error] :2662:4: The element type "view" must be terminated by the matching end-tag "</view>".
你可以發佈整個SQLException的堆棧跟蹤嗎? –
請編輯你的文章和堆棧跟蹤,不要使用評論。 –