Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

I've installed Oracle XE 11.2 on Fedora 18 but have trouble starting SQLPlus. It quits with the following error:

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

All of the environment variables are properly set (copied from installation guide)

# ~/.zshrc
ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe # It is in fact installed there
ORACLE_SID=XE
NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`
PATH=$ORACLE_HOME/bin:$PATH

NLS_LANG is AMERICAN_AMERICA.AL32UTF8. As far as I understand Oracle ignores system language related variables but here they are anyway:

LC_CTYPE=en_US.UTF-8
LANG=en_US.UTF-8

Any suggestions?

share|improve this question
    
did you export the variables, e.g. 'export ORACLE_HOME' –  miracle173 Aug 6 '13 at 5:35
    
It is probably a permissions problem. Does the user you are trying to execute SQL*Plus as have permissions on the directories on $ORACLE_HOME? Easiest fix is to add the user to the dba group. –  Phil Aug 6 '13 at 18:46

5 Answers 5

This error usually occurs if you are executing sqlplus as a different user (other than the one which installed Oracle software), due to permission issues

Check Oracle Note: 356850.1

share|improve this answer

Try adding:

export LD_LIBRARY_PATH==/u01/app/oracle/product/11.2.0/xe/lib

Otherwise check to see if you can access the lib directory above.

share|improve this answer

I was able to resolve this issue by copying the contents of the SQLPLUS folder into the Instant_Client_12_1 folder. Then SQLPlus was able to launch.

share|improve this answer

I just deployed Instant Client in a directory and after updating LD_LIBRARY_PATH (including the lib directory of Instant Client) and ORACLE_HOME I was facing the same issue. I now have updated PATH (including the bin directory for Instant Client) and this solved the problem.

share|improve this answer

And sometimes following Oracle documentation solves quite some hassle.

Make sure Basic Instant Client is deployed before running the ODBC install script.

Unzip the ODBC Instant Client package, then execute the odbc_update_ini.sh script with Driver Manager installed directory as a command line argument. (For complete syntax, please run "odbc_update_ini.sh" without any command line argument.) For example, if Driver Manager is installed in /home/DriverManager directory

                                $ odbc_update_ini.sh  /home/DriverManger

It will add the DSN entry in $HOME/.odbc.ini and /etc/odbcinst.ini with DSN name as OracleODBC-11g

After the installation the environment needs to be configured in the following way. Add the directory to the LD_LIBRARY_PATH system environment variable. Otherwise ODBC manager will be not able to load/find the driver.

Define the TNS_ADMIN environment variable to point the .ora files directory for OCI.

This must be set for OCI to resolve the TNS name. If TNS_ADMIN is not set, OCI will examine an operating system dependent set of directories to find tnsnames.ora. This search path includes looking in the directory $ORACLE_HOME/network/admin/tnsnames.ora. This is the only reason to set the ORACLE_HOME environment variable for Oracle Instant Client. If ORACLE_HOME is set when running Instant Client applications, it must be set to a directory where Instant Client exists (in this case C:\Oracle\instantclient_11_2). If ORACLE_HOME is not set, then looks in current directory for tnsnames.ora.

Set any Oracle globalization variables required for your locale. See the Oracle Database 11g Globalization Support Guide for more information. For example on Linux to set NLS_LANG: setenv NLS_LANG JAPANESE_JAPAN.JA16EUC

share|improve this answer
    
Why do you think that the OP wants to install ODBC? Also he don't want install a client (neither instance client nor any other one). He has installed Oracle XE 11.2 on Fedora 18. You should not adatp the problem to your solution :-) –  miracle173 Dec 15 at 14:31

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.