未找到消息文件UTILITY_MEG \ spw <lang> .msb

时间:2016-09-20 13:18:27

标签: oracle cmd oracle11g sqlplus database-administration

我想从CMD打开SQL * Plus

当我尝试在Sqlplus中使用此命令打开它时,我遇到此对话框错误消息:

Message file UTILITY_MEG\spw<lang>.msb not found

关闭对话框消息后,这里是CMD的副本:

Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\Abo-Khaled>sqlplus
Error 14 initializing SQL*Plus
Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory

C:\Users\Abo-Khaled>

我使用这些命令来解决问题:

set oracle_home=C:\app\Abo-Khaled\product\11.2.0\dbhome_1\

set oracle_sid=orcl

但是无法解决问题。

备注:

  • 当我直接使用SQL * Plus时,我可以毫无问题地登录。但我需要使用CMD登录。
  • 我在Windows 7中使用oracle 11g

  • 大约一个月前,我对SQL * Plus没有这个问题。

3 个答案:

答案 0 :(得分:1)

我刚遇到这个问题,并且能够通过调整我的Windows路径环境变量来解决它。

确保包含正确sqlplus.exe的bin目录的路径首先出现在Windows路径环境变量中。

在命令提示符下使用sqlplus.exe时,可能正在执行与预期不同的sqlplus.exe。

在我的情况下,我也安装了Oracle中间件,它有自己的sqlplus.exe被引用并抛出“消息文件”错误。

在路径变量中首先将路径放到数据库主目录的bin目录后,问题就消失了。

答案 1 :(得分:0)

您需要在命令提示符中设置NLS_LANG参数。例如set nls_lang = ENGLISH

答案 2 :(得分:0)

对于较新的数据库12c及更高版本,我不需要oracle_home变量。如果您有,请尝试删除以查看“找不到消息文件sp1.msb”。这是我在台式机/笔记本电脑上安装Oracle DB的经验。