0

我已经在我的 Mac Sierra 上下载并安装了 Oracle Instant Client。我还创建了 tnsnames.ora 文件并导出了它的路径。

但是,当我尝试登录远程 Oracle 服务器时,出现以下错误:

Mridulas-MacBook-Pro:~ mridulaprabhu$ sqlplus demo$security/password@ERPONWEB

SQL*Plus: Release 11.2.0.4.0 Production on Fri Aug 18 16:37:03 2017

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

ERROR:
ORA-01017: invalid username/password; logon denied

当我的同事在 Windows 上使用相同的凭据连接到同一台服务器时,他可以登录。

有人告诉我这可能是因为我的 MAC 上的字符集。所以我已将 NLS_LANG 设置为,AMERICAN_AMERICA.US7ASCII但它仍然无法正常工作。

我怎样才能解决这个问题?

4

1 回答 1

1

OS X 是一个 Unix 变体,你从 shell 运行它。因此$,您的用户名中的 被解释为环境变量。

如果你这样做:

echo demo$security/password@ERPONWEB

你会看到它只显示demo/password@ERPONWEB- 除非你碰巧有一个名为 的环境变量security,在这种情况下它将被替换。

您可以转义美元符号以停止该解释:

sqlplus demo\$security/password@ERPONWEB

或将整个参数括在单引号(不是双引号)中:

sqlplus 'demo$security/password@ERPONWEB'
于 2017-08-18T11:22:35.047 回答