gpt4 book ai didi

oracle - coldfusion v 10 std无法通过jdbc oci驱动程序连接到oracle

转载 作者:行者123 更新时间:2023-12-01 12:37:55 29 4
gpt4 key购买 nike

我正在尝试在Coldfusion v 10 std服务器上建立到Oracle数据库的jdbc-oci连接。

使用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,port,service):jdbc:oracle:oci:@//<IP>:1521/<SID>
  • 错误消息:
  • 数据源theName的连接验证失败
    java.sql.SQLException:尝试建立连接超时
    根本原因是:java.sql.SQLException:尝试建立连接
  • 超时
  • 环境:
  • ojdbc6驱动程序位于Coldfusion
  • 已知的目录中
  • oci.dll位于系统路径变量已知的目录中,该目录已由Coldfusion服务
  • 上的sysinternals processexplorer验证
    JDBC URL的
  • (使用tnsnames.ora),包含tnsnames.ora的目录称为系统变量TNS_ADMIN,由Coldfusion服务
  • 上的sysinternals processexplorer验证
  • 和tnsnames.ora一起存在一个sqlnet.ora文件,该文件包含用于打开数据加密
  • 的设置

    堆栈跟踪:

    从“此处的数据源名称”请求连接时发生非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>".

    最佳答案

    在配置文件cf-directory \ cfusion \ bin \ jvm.config上将路径添加到oracle即时客户端已解决了该问题。

    关于oracle - coldfusion v 10 std无法通过jdbc oci驱动程序连接到oracle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38375687/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com