Windows 7 64位。 自2月份开始安装OracleXE 也安装了Oracle instantclient 11.2,所以我有c:\ oracle \和c:\ oraclexe。
我每天都使用SQLPlus。 它的位置是C:\ oraclexe \ app \ oracle \ product \ 11.2.0 \ server \ bin \ sqlplus.exe
在这6个月的时间里,我没有更改环境变量。
然而,突然间,SQLPlus停止了工作。永久性。即使重新启动后:
Error 6 initializing SQL*Plus
SP2-0667: Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory
现在有人在讨论这个确切问题的页面中有 TONS AND TONS 。每个解决方案都涉及设置ORACLE_HOME。这些都没有解决我的问题。实际上,ORACLE_HOME在2月到今天之间的任何时候都不是环境变量!
这些页面都是彼此重复的,我对每个页面上的每个解决方案条件都感到满意无济于事。而且他们几乎完全是关于 JUST 安装Oracle的人。
但是我呢?我的安装完美了6个月,有一天我没有改变任何东西就腐烂了。
1)我已完成设置ORACLE_HOME = c:\ oraclexe \ app \ oracle \ product \ 11.2.0 \ server \无效。我也在黑暗中拍摄了大约10张照片,并将其设置为该路径中的不同级别(如c:\ oraclexe),但我读过的所有内容都应该指向服务器文件夹。
2)我知道它不是路径问题,因为我在运行SQLPlus时没有问题。该错误由SQLPlus生成。
3)我已尝试设置LANG = us {尽管我在过去的任何时候都不需要这个}}
4)我甚至试过设置NLS_LANG = American_America.we8iso8859p15无济于事。
5)是的,sp1us.msb确实在:C:\ oraclexe \ app \ oracle \ product \ 11.2.0 \ server \ sqlplus \ mesg \ sp1us.msb
6)我甚至使用Sysinternals Procmon来查看SQLPlus.exe的位置。它需要大量输出才能完成并且我对该工具不太熟悉,但它似乎表明SQLPlus正在寻找文件......就在这里!那为什么不能找到呢?
7)我不认为它的文件权限。好好坚持6个月。我已经确保通过takeown和icalcs拥有这些文件 - 但只有在问题出现后才会这样。
8)它不是防病毒软件。
我已经两次捣乱并设法使其正确运行,两次都只运行一次并停止正常工作。所以我永远无法验证一直让它发挥作用的步骤。对我来说没有意义,它会运行一次,但不会运行两次 - 这几乎就像SQLPlus本身正在改变环境以防止SQLPlus运行。
答案 0 :(得分:0)
我发现了问题!
我在自己的脚本中设置了一个环境可变的SQLPLUS。 我将它用于非特定于Oracle的目的。
我猜我碰到了他们想要使用的变量。
奇怪的是,我一直在使用这个脚本(一个sqlplus.bat,分析不同的sqlplus行为)2年了,而我在临时环境变量中的选择本周才出现问题。
很奇怪!