首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从sqlplus连接到Oracle 19C云

从sqlplus连接到Oracle 19C云
EN

Stack Overflow用户
提问于 2020-07-19 07:15:01
回答 1查看 4K关注 0票数 1

我无法连接到我的Oracle 19C Cloud,我已经下载了钱包,并将它放在了我的机器(Windows)中的一个安全的位置。我已经在我的机器上安装了Oracle19C客户端,并使用钱包压缩中的连接字符串更新了tnsnames.ora(网络/管理),不确定我如何遗漏了任何配置,比如环境变量,从sqlplus错误: ORA-12154: TNS:未能解析指定的连接标识符。

注意:我可以使用钱包文件从Sql developer连接到Cloud。我的机器上运行着甲骨文18c XE。

如有任何帮助,我们将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-19 11:20:28

您的问题似乎与您自己的笔记本中安装了Oracle XE数据库版本的问题有关。

当您运行sqlplus或任何其他OCI工具连接到Oracle时,无论数据库是远程主机还是云中,sqlplus都会对TNS_ADMIN环境变量进行评估,以确定sqlnet和tnsname文件的位置。如果没有变量,它将使用您的主要Oracle注册表项的默认值,这肯定指向您的XE版本,就像以前安装的那样。

当您得到ORA-12154: TNS:未能解析指定的连接标识符时,您的会话将不会在配置文件中找到任何有关目标的信息,这可能是因为会话正在计算XE安装中的文件。

尝试执行以下操作

将Oracle提供的钱包文件复制到与XE installation.

  • Export不同的位置sqlplus cmd会话中的TNS_ADMIN变量到这个新路径

  • 使用钱包

运行sqlplus

例子(我相信你做了第1和第2点)

  1. 在计算机上安装甲骨文客户端软件。使用完整的Oracle数据库客户端11.2.0.4 (或更高版本)或Oracle即时客户端12.1.0.2 (或更高版本)。Instant客户端包含进行Oracle调用接口连接所需的最小软件。即时客户端12.1.0.2 (或更高版本)足以满足大多数applications.
  2. Download客户端凭据,并将文件存储在客户端计算机上的安全文件夹中。请参见下载客户端凭据(Wallets).
  3. Unzip/uncompress凭据文件到客户端computer.
  4. Edit上的安全文件夹--您解压缩凭据文件的文件夹中的sqlnet.ora文件,将“?/ credentials.

/credentials.”替换为包含客户端credentials.的文件夹的名称。

示例

代码语言:javascript
复制
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/my_new_path")))
SSL_SERVER_DN_MATCH=yes

cmd> set tns_admin = my_new_path
cmd> sqlplus /@yourtnsentry 

我不知道您的云数据库是否使用公共IP地址,或者您是否希望使用SSH隧道连接到数据库。请看这里,因为您可能需要使用SQLcl (SQLcl命令行)。

https://docs.cloud.oracle.com/en-us/iaas/Content/Database/Tasks/connectingDB.htm

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62977351

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档