无法通过 TCPS 连接到 Oracle 数据库
Cannot connect to Oracle database via TCPS
我们设置了 Oracle 服务器并使用 TCP 和 SSL 作为连接。此设置是使用助手向导完成的,我们几乎在所有地方都使用默认设置(这也意味着不存在 tnsnames.ora 或 listener.ora)。 lsnrctl status
表明正确的端口正在侦听。
我们正在尝试通过 DBeaver 和 SQuirrel SQL 连接到该数据库,但无法正常工作。我们已将程序的 vmargs 设置为包含服务器证书(例如 dbeaver.exe -vmargs -Djavax.net.ssl.trustStore=C:/...keystore.jks -Djavax.net.ssl.trustStorePassword=password -Djavax.net.ssl.trustStoreType=JKS
),效果很好。
使用具体的 JDBC URL 字符串 (jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=IP)(PORT=5500))(CONNECT_DATA=(SERVICE_NAME=testdb)))
) 连接到数据库不起作用,并在 60 秒后超时,没有正确的错误(IO 错误:得到负一来自读取调用)。我们已经尝试了几乎所有方法,但无法正常工作。
端口分配正确,使用正常的TCP协议和端口1521可以成功访问数据库。jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=IP)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=testdb)))
我们缺少步骤吗?似乎没有任何防火墙问题。证书似乎也工作正常,但我们无法连接任何程序(或通过命令行连接 sqlplus)。
有人知道可能是什么问题吗?谢谢!
您可以查看 SSL blog or our OTN page 中的分步说明吗?如果您使用的是 TLSv1.2,那么 JDK 版本和 JDBC 驱动程序版本非常重要。
最后我成功了。网上有各种网站可以向您展示它是如何完成的。我用过这个:
https://database.edorex.ch/blog/database-connection-with-a-certificate/
设置钱包、设置证书和在数据库中设置用户是最重要的步骤。此外,我必须将服务器和客户端机器分开。服务器现在在 VM 上并且它以这种方式工作,我无法让它在同一台机器上工作。
我们设置了 Oracle 服务器并使用 TCP 和 SSL 作为连接。此设置是使用助手向导完成的,我们几乎在所有地方都使用默认设置(这也意味着不存在 tnsnames.ora 或 listener.ora)。 lsnrctl status
表明正确的端口正在侦听。
我们正在尝试通过 DBeaver 和 SQuirrel SQL 连接到该数据库,但无法正常工作。我们已将程序的 vmargs 设置为包含服务器证书(例如 dbeaver.exe -vmargs -Djavax.net.ssl.trustStore=C:/...keystore.jks -Djavax.net.ssl.trustStorePassword=password -Djavax.net.ssl.trustStoreType=JKS
),效果很好。
使用具体的 JDBC URL 字符串 (jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=IP)(PORT=5500))(CONNECT_DATA=(SERVICE_NAME=testdb)))
) 连接到数据库不起作用,并在 60 秒后超时,没有正确的错误(IO 错误:得到负一来自读取调用)。我们已经尝试了几乎所有方法,但无法正常工作。
端口分配正确,使用正常的TCP协议和端口1521可以成功访问数据库。jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=IP)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=testdb)))
我们缺少步骤吗?似乎没有任何防火墙问题。证书似乎也工作正常,但我们无法连接任何程序(或通过命令行连接 sqlplus)。
有人知道可能是什么问题吗?谢谢!
您可以查看 SSL blog or our OTN page 中的分步说明吗?如果您使用的是 TLSv1.2,那么 JDK 版本和 JDBC 驱动程序版本非常重要。
最后我成功了。网上有各种网站可以向您展示它是如何完成的。我用过这个: https://database.edorex.ch/blog/database-connection-with-a-certificate/
设置钱包、设置证书和在数据库中设置用户是最重要的步骤。此外,我必须将服务器和客户端机器分开。服务器现在在 VM 上并且它以这种方式工作,我无法让它在同一台机器上工作。