This discussion is archived
3 Replies Latest reply: Mar 21, 2013 10:39 AM by user11993275 RSS

Issues with Selinux with OBIEE in Linux

user11993275 Newbie
Currently Being Moderated
Hello guys

Have you ever run into this error in OBIEE?

Odbc driver returned an error (SQLExecDirectW).
Error Details
State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. directory/dbhome/lib/ cannot restore segment prot after reloc: Permission denied [nQSError: 46029] Failed to load the DLL Directory/OracleBI/server/Bin/ Check if 'Oracle OCI 10G' database client is installed. (HY000)
SQL Issued: SELECT Date."Day Date" saw_0 FROM "Reports" ORDER BY saw_0

Now I did some research around on this and I am getting that Selinux being 'enforced' was the cause of this error. Now we do have the requirement to enable to Selinux at all time, but this is not the point here..

The thing I find interesting is that, after I change the setting to 'permissive', OBIEE is running perfectly fine. Then when we change it again back to 'enforced', OBIEE is still running fine. But initially, there was an error.

In my other environment, because I was not able to change the setting of Selinux, the OBIEE was giving the same error after restarting the DB, OBIEE service. Then I restarted the OBIEE service again (OC4J, saw and sa scripts), then the error disappears..

Does anybody ever experience this kind of behavior in Linux?

Please share with me your thoughts to help me understand more about the inner working of this thing..

Appreciated in advance
  • 1. Re: Issues with Selinux with OBIEE in Linux
    Satya Ranki Reddy Expert
    Currently Being Moderated

    Please follow the steps.

    1) Make sure you got a FULL Oracle 10g client installed (check with your DBA). Oracle INSTANT CLIENT is NOT SUPPORTED.
    2) Make sure the OBIEE user that you use to run the OBIEE services has read and execute permissions on all files under ORACLE_HOME for the Oracle client that you wish to use. Even better if you install the Oracle client with the same user as the OBIEE uses to run it's services.
    3) Make sure your Oracle 10g client has the OCI 32bits libraries installed (check in the ORACLE_HOME/lib32 directory that the library exists and it's size is bigger than 0 bytes). OBIEE uses the 32bits libraries.
    4) Configure your OBIEE /OracleBI/setup/ file to make sure your ORACLE_HOME and TNS_ADMIN variables are correctly set to the correct values. You also need to set these two:

    export PATH=$ORACLE_HOME/bin:$PATH

    5) Export all the above 4 variables in your current session and test that you can resolve your database name(s) by doing "tnsping DB_NAME".
    6) Restart all your OBIEE services and check that all variables are correctly set (type "env").

    After you have done all that give it a test and let us know if it works.

    obiee oci driver loading problem

    Hope this help's

  • 2. Re: Issues with Selinux with OBIEE in Linux
    rmoff Expert
    Currently Being Moderated
    So far as I'm aware, Oracle don't support SELinux being anything other than Permissive or Disabled.
  • 3. Re: Issues with Selinux with OBIEE in Linux
    user11993275 Newbie
    Currently Being Moderated
    Hello Satya

    Thanks for the response but this is not where my problem is. My problem is that, it didn't work when I initially had the Selinux enabled. It threw those errors..

    A: When I changed it to 'permissive', the OBIEE works. When I then change the Selinux back to 'enforeced', it still works.

    B: In another environment since I can't change the Selinux setting, I just restarted OBIEE component without touching Selinux, after restarting, it works.

    My question is, have you experienced these behaviors and is there a way to better understand such behaviors?


  • Correct Answers - 10 points
  • Helpful Answers - 5 points