无法从OSX登录到Oracle数据库
我已经在Mac Sierra上下载并安装了Oracle Instant Client。 我还创建了tnsnames.ora文件并导出了其路径 但是,当我尝试登录到远程Oracle服务器时,出现以下错误:无法从OSX登录到Oracle数据库,oracle,oracle-client,Oracle,Oracle Client,我已经在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
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
,但仍然不起作用
如何修复此问题?OS X是Unix的一个变体,您正在从shell运行此程序。因此,用户名中的
$
被解释为一个环境变量
如果您这样做:
echo demo$security/password@ERPONWEB
您将看到它只显示demo/password@ERPONWEB
-除非您碰巧有一个名为security
的环境变量,在这种情况下,该变量将被替换
您可以跳过美元符号以停止该解释:
sqlplus demo\$security/password@ERPONWEB
或者将整个参数用单引号(而不是双引号)括起来:
sqlplus 'demo$security/password@ERPONWEB'