Saturday, February 2, 2013

OBIEE 11g - Deploying RPD on Linux to Access the Local Linux Oracle Database


Lets say we have working RPD with a “Data source name:” ORCL with a Username and Password : BISAMPLE/BISAMPLE.
Now we need to deploy this RPD on a Linux box where we have an Oracle XE Database installed with the ORACLE_SID: XE.
  1. First open up our created working Windows RPD as shown in the below screen.
  2. Observe that in the “Physical” layer pane “ORCL” is shown as the Database.
  3. Right Click and select “Rename” on the “ORCL” and rename it to the Equivalent connection sting in your tnsnames.ora e.g “XE” as show in screenshot below.
  4. Save your changes and click “Yes” button for the “Do you wish to check global consistency?” dialog.
  5. We go to the “Administration Tool” menu and select “Manage” -> “Variables…”
  6. Change the “BI_EE_HOME” variable’s “Default Initializer:” from the Windows path to equivalent Unix path as show in the below screenshot:
  7. On the linux box where you have the OBIEE 11g “bi_server1″ running have the following:
  8. Copy the Oracle’s Database tnsnames.ora to the OBIEE 11g installed home.
    $ cp /u01/app/oracle/product/11.2.0/xe/network/admin/tnsnames.ora /home/srikanth/OracleFMW/oracle_common/network/admin/tnsnames.ora
    $ cd /home/srikanth/OracleFMW/oracle_common/network/admin/
  9. Make sure the XE or what ever ORACLE_SID is there is mentioned in the tnsnames.ora
    $ cat tnsnames.ora
    # tnsnames.ora Network Configuration File:
    XE =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = srilinlap)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = XE)
    )
    )
  10. Update your bash_profile so that you have the location to the newly copied tnsnames.ora location
    $ cat ~/.bash_profile
    ….
    PATH=$PATH:$HOME/.local/bin:$HOME/bin
    TNS_ADMIN=/home/srikanth/OracleFMW/oracle_common/network/admin
    export PATH TNS_ADMIN
  11. One all the above are done copy over the modified RPD file to the Linux machine and deployed it using the EM from the location http://localhost:7001/em.
Summary:
Basically we are modifying the “ORCL” string to whatever is mentioned in our tnsnames string, here for example is “XE”.
Then we are copying over the tnsnames from ORACLE_HOME to OBIEE_HOME.
Then also setting the TNS_ADMIN variable to point to the new tnsnames.ora location