私は、Oracleデータベースを含むLinux RedHatを持っています。すべての環境変数を設定しましたが、sqlplus
コマンドを実行すると、次のエラーが発生しました:SP2-0667: Message file sp1<lang>.msb not found
ここに私の変数と私のsqlplus
コマンドがあります:
[Oracle@as ~]$ echo $Oracle_HOME
/Oracle/product/12.1.0/dbhome_1
[Oracle@as ~]$ echo $ORA_NLS33
/Oracle/product/12.1.0/dbhome_1/nls/data
[Oracle@as ~]$ echo $LD_LIBRARY_PATH
/Oracle/product/12.1.0/dbhome_1/lib
[Oracle@as ~]$ 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
私は現在Oracle
ユーザーとして実行していることに注意してください。これは、読み取りおよび実行権限を持つ/Oracle
フォルダーの所有者のようです。また、sp1us.msbという名前のファイルが次のフォルダーに存在することも確認しました。
[Oracle@as ~]$ find $Oracle_HOME | grep sp1
/Oracle/product/12.1.0/dbhome_1/sqlplus/mesg/sp1us.msb
/Oracle/product/12.1.0/dbhome_1/sqlplus/mesg/sp1us.msg
私は解決策を見つけました! OracleのドキュメントでOracle_HOMEについて述べたように、私のenv変数は/ etc/profilefileに設定されていますが、envからは見えません。 grep Oracle_HOMEまたはdbhomeso次のコマンドを実行しました。
export Oracle_HOME=/app/Oracle/product/12.1.0/dbhome_1
そして今それは動作します