【发布时间】:2018-05-08 17:26:01
【问题描述】:
我正在尝试在命令提示符下使用 SQLPLUS 从我的笔记本电脑连接到 Linux 服务器上的 Oracle 实例。
我安装了 oracle SQLDeveloper 并将其用于交互,但试图让 SQLPLUS 运行以便我可以设置一些批处理。
在COMMAND 窗口中,我首先使用以下方法设置我的ORACLE_HOME 变量:
set ORACLE_HOME=C:\app\oracle\product\11.2.0\client_1
然后我尝试使用SQLPLUS 连接使用:
sqlplus -s 'myID/myPW@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=DBServer)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=XXX)))'
即使我指定了 PW,它也会以 Enter password: 提示进行响应,当我输入密码并按 Enter 时,我会收到 ERROR
ORA-12560:TNS:协议适配器错误
所以,接下来,我使用以下方法设置我的 ORACLE_HOME 变量:(添加 \BIN)
set ORACLE_HOME=C:\app\oracle\product\11.2.0\client_1\BIN
然后我尝试使用 SQLPLUS 连接:
-s 'myID/myPW@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=DBServer)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=xxx)))'
这会产生 2 个错误,但至少不会提示输入密码:
初始化 SQL*Plus SP2-0667 时出现错误 6:找不到消息文件 sp1.msb SP2-0750:您可能需要将 ORACLE_HOME 设置为您的 Oracle 软件 目录
我尝试了ORACLE_HOME 的各种值,但要么它会提示PW 并且仍然不喜欢它,要么它不会提示并因其他错误而失败。我需要它来获取我提供的PW 值并连接,但似乎无法让它工作。我还确保我已读取和执行该目录以及client_1\sqlplus\mesg 目录中的sp1us.msb 文件的权限。
这是我第一次尝试在笔记本电脑上运行 SQLPLUS。我之前在 Linux 服务器上运行过它,并且在脚本中我在 shell 脚本文件本身中设置了:
export ORACLE_HOME=/oracle/app/product/11.2.0.4/dbhome_1/
它在那里工作。
不知道为什么我的笔记本电脑无法正常工作。接受建议。谢谢,
【问题讨论】:
-
通常在 Windows 环境变量
ORACLE_HOME上不是必需的。但是将C:\app\oracle\product\11.2.0\client_1\BIN放入您的PATH。
标签: windows oracle command-prompt sqlplus