Skip Headers
Oracle® Identity Manager Installation and Configuration Guide for Oracle Application Server
Release 9.1.0.1

Part Number E14062-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

4 Installing and Configuring a Database for Oracle Identity Manager

Oracle Identity Manager requires a database. You must install and configure your database before you begin the Oracle Identity Manager installation. Refer to the topic that applies to your database:

4.1 Using an Oracle Database for Oracle Identity Manager

To use Oracle Database as your database, you must perform the tasks described in the following sections:

4.1.1 Installing Oracle Database

Install Oracle9i Database or Oracle Database 10g release 2 by referring to the documentation delivered with the Oracle database. See Oracle Identity Manager Readme for the specific supported versions. Oracle recommends using the Basic installation.

Note:

If you choose the Custom installation, you must include the JVM option, which is required for XA transaction support.

4.1.2 Creating an Oracle Database

You can create a new Oracle database instance for Oracle Identity Manager. When creating the database, ensure that you configure the Oracle JVM feature and enable query rewrite.

You can use the Database Configuration Assistant (DBCA) tool to create the database. To configure the Oracle JVM feature, select the Oracle JVM feature on the Standard Database Features page of the DBCA.

To enable the database for query rewrite, set the initialization parameters QUERY_REWRITE_ENABLED to TRUE and QUERY_REWRITE_INTEGRITY to TRUSTED in the All Initialization Parameters field of the DBCA.

Note:

For the Oracle Identity Manager installation, Oracle recommends that you configure a minimum block size of 8K for Oracle Database.

Refer to your Oracle Database documentation for detailed instructions on creating a database instance.

4.1.2.1 Configuring the Database for Globalization Support

For globalization support for Oracle Identity Manager, Oracle recommends that for configuring the database for Unicode. To configure the database for Unicode, perform the following steps:

  1. Select AL32UTF8 in the Character Sets tab of the DBCA. This character set supports the Unicode standard.

  2. Set the NLS_LENGTH_SEMANTICS initialization parameter to CHAR in the All Initialization Parameters field of the DBCA.

    See Also:

    Oracle Identity Manager Globalization Guide for information about globalization support for Oracle Identity Manager

4.1.3 Preparing the Oracle Database

After you install Oracle Database and created a database instance, you must prepare it for Oracle Identity Manager by completing the following tasks:

  • Verify that query rewrite is enabled

    Note:

    Query rewrite is applicable only if you are using Oracle Database Enterprise Edition.
  • Enable XA transactions support

    Note:

    Java Virtual Machine (JVM) is required to enable XA transaction support. If you did not install the Oracle JVM component during Oracle Database installation, then you must install it now. See the Oracle Database documentation for specific instructions.
  • Create at least one tablespace for storing Oracle Identity Manager data

  • Create a database user account for Oracle Identity Manager

You can perform the preceding tasks to prepare your Oracle database for Oracle Identity Manager by running one of the following scripts:

  • On UNIX, run the following:

    prepare_xl_db.sh

  • On Microsoft Windows, run the following:

    prepare_xl_db.bat

Both of these scripts ship with the Oracle Identity Manager Installer and are located in the /installServer/Xellerate/db/oracle/ directory.

You must observe the following prerequisites when using the prepare_xl_db script:

  • The script must be run by a user holding DBA privileges (for example, the oracle user on UNIX typically holds these privileges).

  • The script must be run on the computer on which the database resides.

To prepare your Oracle database for Oracle Identity Manager, complete the steps associated with the operating system on the computer hosting your Oracle database:

4.1.3.1 Preparing the Database on UNIX:

To prepare the database on UNIX:

  1. Copy the scripts prepare_xl_db.sh and xell_db_prepare.sql from the distribution CD to a directory on the computer hosting your database on which you (as the account user performing this task) have write permission.

  2. Run the following command to enable permission to run the script:

    chmod 755 prepare_xl_db.sh

  3. Run the prepare_xl_db.sh script by entering the following command:

    ./prepare_xl_db.sh

  4. Provide information appropriate for your database and host computer when the script prompts you for the following items:

    • The location of your Oracle home (ORACLE_HOME)

    • The name of your database (ORACLE_SID)

    • The name of the Oracle Identity Manager database user to be created

    • The password for the Oracle Identity Manager database user

    • The name of the tablespace to be created for storing Oracle Identity Manager data

    • The directory in which to store the data file for the Oracle Identity Manager tablespace

    • The name of the data file (you do not append the .dbf extension)

    • The name of the temporary tablespace

  5. Check the prepare_xl_db.lst log file located in the directory from which you ran prepare_xl_db.sh to see the execution status and additional information.

    Note:

    If you encounter errors after running the prepare_xl_db.sh script, run the following command to ensure that prepare_xl_db.sh is executable on UNIX and Linux and then run the prepare_xl_db.sh script again.
    $ dos2unix prepare_xl_db.sh
    

4.1.3.2 Preparing the Database on Microsoft Windows:

To prepare the database on Microsoft Windows:

  1. Copy the scripts prepare_xl_db.bat and xell_db_prepare.sql from the distribution CD to a directory on the computer hosting your database on which you (as the account user performing this task) have write permission.

  2. Open a command window, navigate to the directory to which you just copied the scripts, then run prepare_xl_db.bat with the following arguments:

    prepare_xl_db.bat ORACLE_SID ORACLE_HOME
    XELL_USER XELL_USER_PWD TABLESPACE_NAME
    DATAFILE_DIRECTORY DATAFILE_NAME
    XELL_USER_TEMP_TABLESPACE SYS_USER_PASSWORD
    

    For example, the string you enter on the command line might look like the following:

    prepare_xl_db.bat XELL C:\oracle\ora92 xladm xladm
    xeltbs C:\oracle\oradata xeltbs_01 TEMP manager
    

    Table 4-1 lists the options used in the preceding example of prepare_xl_db.bat.

    Table 4-1 Options for the prepare_xl_db.bat Script

    Argument Description

    XELL

    Name of the database

    C:\oracle\ora92

    Directory where the Oracle database is installed

    xladm

    Name of the Oracle Identity Manager user to be created

    xladm

    Password for the Oracle Identity Manager user

    xeltbs

    Name of the tablespace to be created

    C:\oracle\oradata

    Directory where the data files will be placed

    xeltbs_01

    Name of the data file (you do not need to include the .dbf extension)

    TEMP

    Name of the temporary tablespace that already exists in your database

    manager

    Password for the SYS user


  3. Check the prepare_xl_db.lst log file located in the directory from which you ran prepare_xl_db.bat to see the execution status and additional information.

4.1.3.3 Evaluating Script Results

If the script returns a message indicating successful execution, you can continue to the next task, which is installing Oracle Identity Manager.

If the script does not succeed, you must manually fix all fatal (nonrecoverable) errors so that the database is prepared successfully.

You can ignore all non-fatal errors. For example, when the script tries to drop a non-existent view, it will return the error "ORA-00942: table or view does not exist".

Make sure to scan all the errors in the log file and ignore or resolve them on an individual basis. Remember that you must successfully prepare the database for Oracle Identity Manager before you can install Oracle Identity Manager.

4.1.4 Removing Oracle Identity Manager Entries from an Oracle Database

To remove Oracle Identity Manager entries from an Oracle database after removing (deinstalling) the Oracle Identity Manager product, drop the database user holding the Oracle Identity Manager schema.

4.2 Using Oracle RAC Databases for Oracle Identity Manager

This section explains how to deploy Oracle Real Application Clusters (Oracle RAC) databases for Oracle Identity Manager and contains the following sections:

4.2.1 Installing Oracle Identity Manager for Oracle RAC

Oracle RAC is a cluster database with a shared cache architecture that provides highly scalable and available database solutions. Oracle RAC consists of multiple database instances on different computers acting in tandem to provide these features.

Note:

The Oracle Identity Manager Installer program does not provide support for Oracle RAC. To deploy Oracle Identity Manager for Oracle RAC, you must install Oracle Identity Manager on a single database instance in Oracle RAC and then change the application server settings, specifically the connection pool parameters, to use the Oracle RAC JDBC connection string.

Use the following steps to install Oracle Identity Manager for Oracle RAC:

  1. Ensure that Oracle RAC is properly set up and configured with the Oracle Identity Manager schema owner.

  2. Start the Oracle Identity Manager Installer.

  3. On the Database Parameters page of the installer, enter the host name, port number, and database name of a single database instance in Oracle RAC.

  4. Complete the Oracle Identity Manager installation by performing the steps in the installer.

  5. Configure your application server for Oracle RAC by referring to Configuring Oracle Application Server for Oracle RAC.

4.2.2 Oracle RAC Net Services

The net services name entry for an Oracle RAC database differs from that of a conventional database. The following is an example of the net services name entry for an Oracle RAC database:

racdb= 
      (DESCRIPTION= 
              (LOAD_BALANCE=off)
              (FAILOVER=on)
              (ADDRESS_LIST=
                     (ADDRESS=(protocol=tcp)(host=node1-vip)(port=1521))
                     (ADDRESS=(protocol=tcp)(host=node2-vip)(port=1521))) 
      (CONNECT_DATA=
              (SERVER=DEDICATED)
              (SERVICE_NAME=racdb)))

Table 4-2 lists and describes the parameters in a net services name entry for an Oracle RAC database.

Table 4-2 Parameters for Oracle RAC Database Net Services Name Entries

Parameter Description

LOAD_BALANCE

Specifies whether client load balancing is enabled (on) or disabled (off). The default setting is on.

FAILOVER

Specifies whether failover is enabled (on) or disabled (off). The default setting is on.

ADDRESS_LIST

Specifies the list of all the nodes in Oracle RAC, including their host names and the ports they listen on.


4.2.3 JDBC and Oracle RAC

JDBC client applications using the Thin driver to connect to an Oracle RAC database must use the Oracle RAC net services name as a part of the JDBC URL. The entire Oracle RAC net services name is concatenated and the entire string is used in the JDBC URL so the client application can connect to Oracle RAC.

The following sample code shows how a JDBC URL is used to connect to an Oracle RAC database:

//String url = "jdbc:oracle:thin:@dbhost:1521:dbservice"
String racUrl =
"jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=off)(FAILOVER=on)(ADDRESS_LIST=(ADDRESS=(protocol=tcp)(host=node1-vip)(port=1521))(ADDRESS=(protocol=tcp)(host=node2-vip)(port=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=racdb)))";

       String strUser = "username";
       String strPW = "password";

       // load Oracle driver   
       Class.forName("oracle.jdbc.driver.OracleDriver");   

       // create the connection
       con = DriverManager.getConnection(strURL, strUser, strPW);

The subsequent sections about configuring application servers for Oracle RAC databases explain how to modify connection pools to use a similar JDBC URL so the application server can communicate with Oracle RAC.

4.2.4 Configuring Oracle Application Server for Oracle RAC

This section explains how to configure Oracle Application Server (nonclustered or clustered) for Oracle RAC by ensuring the data sources and connection pools are configured to use the Oracle RAC JDBC connection string.

Note:

Before configuring Oracle Application Server for Oracle RAC, you must:
  • Get the RAC net services name from the tnsnames.ora file.

  • Construct the RAC JDBC URL by referring to JDBC and Oracle RAC.

Perform the following steps to configure both non-clustered and clustered Oracle Application Servers for Oracle RAC:

Note:

If you are configuring an Oracle Application Server cluster for Oracle RAC, perform each of the following steps on all nodes in the cluster.
  1. Open the OIM_HOME/xellerate/config/xlconfig.xml file.

  2. Locate the <DirectDB> section and replace the value of the <url>...</url> tag with the RAC JDBC URL. For example, the new tag might be similar to the following:

    <url>jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=off)(FAILOVER=on)(ADDRESS_
    LIST=(ADDRESS=(protocol=tcp)(host=node1-vip)(port=1521))(ADDRESS=(protocol=tcp)
    (host=node2-vip)(port=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_
    NAME=racdb)))</url>
    
  3. Save and close the OIM_HOME/xellerate/config/xlconfig.xml file.

  4. Log in to the Oracle Application Server Administrative Console by using a Web browser.

  5. Select the application server on which Oracle Identity Manager is installed and then select the OC4J instance within the Oracle Application Server instance you are configuring for Oracle RAC.

  6. Select the Administration tab, then select Services, and then select JDBC Resources.

  7. Locate the Connection Pools section and select xlConnectionPool.

  8. Set the URL property value to the RAC JDBC URL described in step 2.

  9. Save the settings.

  10. Select xlXAConnectionPool.

  11. Set the URL property value to the RAC JDBC URL described in step 2.

  12. Save the settings.

    Note:

    For a clustered Oracle Application Server environment, repeat steps 5-12 for each node in the cluster.
  13. Restart the Oracle Application Server. To do so, run the following commands:

    To stop Oracle Application Server:

    ORACLE_HOME/opmn/bin/opmnctl stopall
    

    To start Oracle Application Server:

    ORACLE_HOME/opmn/bin/opmnctl startall
    

    If you are configuring an Oracle Application Server cluster for Oracle RAC, restart all nodes in the cluster.