The purpose of this post is to provide a step-by-step guide to the migration of OBIEE 11g to OBIEE 12c.
The method outlined in this documentation is “Out-of-place”: were a new OBIEE 12c installation is performed followed by a migration of relevant files to the new installation using the BI Migration Tool. This new tool generates a single cohesive artifact containing the RPD, web cat and security settings that can be imported into the BI 12c environment.
“In-place” (OBIEE binaries upgraded) is no longer available. Note that only OBIEE release 220.127.116.11 or later can be migrated to OBIEE 12c. The old migration process used to be a major pain point in the OBIEE lifecycle management.
In order to migrate to 12c OBIEE from existing OBIEE infrastructure, you must first upgrade to at least OBIEE 18.104.22.168.
This post details the steps needed to migrate existing OBIEE 11g (22.214.171.124) RPD to OBIEE 12c (126.96.36.199).
This document assumes that both OBIEE 11g and OBIEE 12c environments are installed with configured services.
There are two (2) approaches for importing OBIEE 11g export bundle to OBIEE 12c:
- Using the BI 12 configuration assistant; this is done when you’re performing the BI 12c configuration for the first time. This is the method recommended by Oracle.
- Using the BI Migration script to import the export bundle, this is for cases when the configuration is already complete (domain and BI service instance have been created)
This post uses the second approach (BI Migration script) given that we’ve already configured our BI 12c environment. Note that OBIEE 12c is more command line centric for deployment, it is no longer possible to upload the OBIEE repository from Web Logic enterprise manager.
BI 12c Environment:
OBIEE 12c Host: 10.80.130.206
$ export ORACLE_HOME=/u01/oracle/Oracle/Middleware/Oracle_Home
$ export BI_DOMAIN=$ORACLE_HOME/user_projects/domains/bi
$ export SERVICE_INSTANCE_NAME=ssi
$ export JAVA_HOME=$ORACLE_HOME/oracle_common/jdk/jre/bin
$ export TNS_ADMIN=$ORACLE_HOME/user_projects/domains/bi/config/fmwconfig/bienv/core
$ export PATH=$JAVA_HOME/bin:$PATH
BI 11g Environment:
OBIEE 11g Host: 10.80.126.50
$ export ORACLE_HOME=/u10/oracle/obiee_home/Oracle_BI1
$ export BI_DOMAIN=/u10/oracle/obiee_home/user_projects/domains/bifoundation_domain
$ export JAVA_HOME=$ORACLE_HOME/jdk
$ export PATH=$JAVA_HOME/bin:$PATH
12cENV$ signifies command to be run from OBIEE 12c environment
11gENV$ signifies command to be run from OBIEE 11g environment
Create staging area in OBIEE 11g environment used to store OBIEE 12c migration tool and OBIEE 11g export bundle.
11gENV$ mkdir /u10/migration
Create staging area in OBIEE 12c environment used to store OBIEE 12c migration tool and OBIEE 11g export bundle.
12cENV$ mkdir /u01/migration
Generate the Migration Tool jar file.
This is necessary if this is the first upgrade performed in the 12c environment or if there is no existing migration tool. The tool creates a bundle OBIEE 11g archive which contains security configuration information, OBIEE RPD and web catalog.
Format –> migration-tool.sh package <migration tool name.jar>
“package” tells the BI Migration Script to perform a packaging operation.
“bi-migration-tool.jar” is the filename of the migration tool jar file where the output is written.
12cENV$ $ORACLE_HOME/user_projects/domains/bi/bitools/bin/migration-tool.sh package bi-migration-tool.jar
Copy 12c migration jar script in 11g.
12cENV$ scp $ORACLE_HOME/bi/migration-tool/jlib/bi-migration-tool.jar firstname.lastname@example.org:/u10/migration
Create the export bundle.
Now that you have generated the bi-migration-tool.jar, you can create an export bundle, which consists of metadata information from the 11g Oracle home.
The export bundle is created by running the following command at the shell prompt:
Format –> java -jar bi-migration-tool.jar out <BI11gHome> <BI11gDomain> <out file>
“out” tells the migration tool to perform and export operation
<BI11gHome> is Oracle BI home directory (Oracle_BI1)
<BI11gDomain> is the BI11g domain directory
<out file> is the export bundle where the output is written, note that the output file has to have .jar extension
11gENV$ java -jar /u10/migration/bi-migration-tool.jar out /u10/oracle/obiee_home/Oracle_BI1 /u10/oracle/obiee_home/user_projects/domains/bifoundation_domain /u10/migration/BI11g.jar
Copy OBIEE 11g jar out file to OBIEE 12c.
11gENV$ scp /u10/migration/BI11g.jar email@example.com:/u01/migration
Import the export bundle.
You will be prompted to enter the RPD password, so have it handy.
Format –> migration-tool.sh in <exported file> <service inst name>
“in” tells the migration tool to perform an import operation
<export file> is the previously created export bundle
<service instance name> is the BI service instance. Default service instance name in OBIEE 12c is ssi
12cENV$ $ORACLE_HOME/user_projects/domains/bi/bitools/bin/migration-tool.sh in /u01/migration/BI11g.jar ssi
If the migration is successful, “migration action succeeded” is displayed.
Next steps after migration
Update to repository.
Once the migration is done, it is recommended to make updates to the repository in order to avoid authentication issues. This is applicable when migrating from OBIEE 188.8.131.52 to 12.2.1.
First, download the RPD using the command below:
Format –> data-model-cmd.sh downloadrpd -U uname -P pwd –o <output rpd> –w rpd_password –SI <service inst name>
“downloadrpd” is a new command line introduced in 12c, it will downloads the OBIEE repository
<uname> is username
<pwd> is the password
“-o” is the output RPD, note that the output rpd has to have .rpd extension
“-W” is the repository password
“-SI” is the service instance name
12cENV$ $BI_DOMAIN/bitools/bin/data-model-cmd.sh downloadrpd -U weblogic -P welcome1 -o /u01/migration/newrpd.rpd -W Admin123 -SI ssi
Once the desired changes have been made to the RPD, you can upload the “updated” repository use a new command line utility uploadrp that will load the OBIEE repository ONLINE. No need (no longer possible) to log into enterprise manager, navigate to the correct domain, lock the configuration, upload, apply, restart etc…
Format –> data-model-cmd.sh uploadrpd –u uname –p pwd –i downloaded.rpd –w rpd_password –SI ssi
12cENV$ $ORACLE_HOME/user_projects/domains/bi/bitools/bin/data-model-cmd.sh uploadrpd -U weblogic -P welcome1 -i /u01/migration/newrpd.rpd -W Admin123 -SI ssi
If the upload is successful, “RPD upload completed successfully” will appear.
You can now login the new OBIEE 12c application and see the list of dashboards from the OBIEE 11g environment.
New Stuff to Know
- Restart BI environment
- TNS_ADMIN location
To avoid “ORA-12154: TNS:could not resolve the connect identifier specified OCI…” error when creating OBIEE 12c reports, ensure that the rpd is using the correct TNS entries and also ensure that the tnsnames.ora is located in the correct location for OBIEE 12c. Unlike OBIEE 11g, the 12c version of the software expects the tnsnames.ora in $ORACLE_HOME/user_projects/domains/bi/config/fmwconfig/bienv/core. It is good to also export the TNS_ADMIN directory in the install owners .bash_profile
Learn more about the upgrade process from OBIEE 11g to OBIEE 12c with Oracle’s documentation.