不使用钱包通过sqlplus连接Oracle自主数据库。

3

我正在尝试使用EZ CONNECT字符串连接到Oracle Autonomous Database: user/password@host:port/service_name

我已经配置了从需要连接的IP地址访问并将mTLS设置为不必需:

Oracle Autonomous Database Network Settings

结果,当我使用从控制台下载的钱包时,我可以成功连接到数据库。

但是,如果我尝试使用EZ CONNECT字符串连接到数据库,我会得到以下错误:

sqlplus -l user/password@tcp://adb.us-sanjose-1.oraclecloud.com:1521/service_name_high.adb.oraclecloud.com

SQL*Plus: Release 19.0.0.0.0 - Production on Wed May 25 00:19:38 2022
Version 19.8.0.0.0

Copyright (c) 1982, 2020, Oracle.  All rights reserved.

ERROR:
ORA-12547: TNS:lost contact


SP2-0751: Unable to connect to Oracle.  Exiting SQL*Plus

是否可以使用EZ CONNECT字符串连接到自主数据库?如果是,那么我做错了什么?

更新1:

我也尝试使用完整的连接字符串。

sqlplus -l user/pass@'(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1521)(host=adb.us-sanjose-1.oraclecloud.com))(connect_data=(service_name=xxxxxxx_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)(ssl_server_cert_dn="CN=adb.us-sanjose-1.oraclecloud.com, OU=Oracle ADB SANJOSE, O=Oracle Corporation, L=Redwood City, ST=California, C=US")))'

但是随后连接失败,出现以下错误 ORA-28759: 无法打开文件。

我怀疑这是由于一些安全设置所导致的问题,但是我可以清楚地看到我的IP已经启用,并且在相同的安全设置下我可以通过双向TLS和钱包连接,我不明白问题可能出在哪里。


不能在不使用钱包的情况下连接。 - pmdba
Franck Pachot写了一篇文章,介绍如何轻松实现这个功能:https://www.freelists.org/post/oracle-l/is-it-possible-to-use-and-oracle-wallet-w-ezconnect,4 - Sayan Malakshinov
1个回答

1
您可以配置Autonomous以允许无需WALLET连接:https://docs.oracle.com/en/cloud/paas/autonomous-database/adbsa/support-tls-mtls-authentication.html(您已经完成了这个步骤)。
但是,您仍然需要使用TCPS而不是TCP:https://docs.oracle.com/en/cloud/paas/autonomous-database/adbsa/connect-jdbc-thin-tls.html,并且您需要通过安全验证部分,短格式目前无法通过(请参见无需WALLET连接)。
注:Autonomous Dedicated(ADB-D)允许使用纯TCP连接。

我尝试使用完整的连接字符串 sqlplus -l user/pass@'(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1521)(host=adb.us-sanjose-1.oraclecloud.com))(connect_data=(service_name=xxxxxxx_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)(ssl_server_cert_dn="CN=adb.us-sanjose-1.oraclecloud.com, OU=Oracle ADB SANJOSE, O=Oracle Corporation, L=Redwood City, ST=California, C=US")))',但是连接失败并出现以下错误 ORA-28759: failure to open file。有什么建议吗? - Vladimir Lugovsky
你是否设置了TNS_ADMIN并且在你的路径中有SQLNET.ORA文件?如果是这样,sqlnet.ora将指向一个钱包文件,连接将尝试使用你在via.sqlnet.ora中指定的钱包文件。 - ssolbach

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接