Previous Topic: Configure the Oracle Wire Protocol Driver

Next Topic: Configure Policy, Key, Logging, or Session Stores

Create an Oracle RAC Data Source on UNIX Systems

Oracle RAC 9.2.0.6 and 10.1.0.4 instances can be configured with the Policy Server as a single data source name similar to that of a single instance Oracle database. However, the data source name for Oracle RAC is different from a regular ODBC data source. In an Oracle RAC system, in addition to the SID or ServiceName for each Oracle instance, there is also a ServiceName for the entire Oracle RAC system. When configuring a data source, configure the data source name to use this ServiceName when connecting to an Oracle RAC.

To configure an Oracle RAC data source

  1. Go to NETE_PS_ROOT/db
    NETE_PS_ROOT

    Specifies the SiteMinder installation directory.

  2. Create a copy of the existing system_odbc.ini file.
  3. Create a new system_odbc.ini file by copying the oraclewire.ini file to system_odbc.ini.
  4. Modify the system_odbc.ini file as follows:
    1. Insert the ServiceName field.
    2. Insert the AlternateServers field.
    3. Insert the LoadBalancing field.
    4. Remove or comment the SID field.
  5. In the ServiceName field, enter the ServiceName for the entire Oracle RAC system. For example, in the following tnsnames.ora file, the value SMDB is the ServiceName for the entire Oracle RAC system (consisting of 3 nodes).

    SMDB =

       (DESCRIPTION =

       (ADDRESS = (PROTOCOL = TCP)(HOST = nete_servername1)(PORT = 1521))

       (ADDRESS = (PROTOCOL = TCP)(HOST = nete_servername2)(PORT = 1521))

       (ADDRESS = (PROTOCOL = TCP)(HOST = nete_servername3)(PORT = 1521))

       (LOAD_BALANCE = yes)

       (CONNECT_DATA =

           (SERVER = DEDICATED)

           (SERVICE_NAME = SMDB)

       )

      )

    The modified text for a data source should appear as follows:

    [Data Source Name]
    Driver=nete_ps_root/odbc/lib/NSora24.so
    Description=DataDirect 6 SP3 Oracle Wire Protocol
    LogonID=uid
    Password=pwd
    HostName=nete_servername1
    PortNumber=1521
    ServiceName=nete_servicename
    CatalogOptions=0
    ProcedureRetResults=0
    EnableDescribeParam=0
    EnableStaticCursorsForLongData=0
    ApplicationUsingThreads=1
    AlternateServers=(HostName=nete_servername2:PortNumber=1521:ServiceName=nete_servicename[, . . . ])
    LoadBalancing=1
    
    nete_ps_root

    Specifies an explicit path to the directory where SiteMinder is installed.

    uid

    Specifies is the username of the database account

    pwd

    Specifies the password for the user.

    nete_servername1

    Specifies the IP address of the first Oracle RAC node. For Oracle RAC 10g, it specifies the virtual IP address.

    nete_servicename

    Specifies the ServiceName for the entire Oracle RAC system.

    AlternateServers

    Specifies the Hostname (virtual IP address), PortNumber, and ServiceName for the remaining Oracle RAC nodes in the environment.

    ServiceName

    Specifies service name for the entire Oracle RAC system. Specifying the AlternateServers provides connection failover to the other Oracle nodes, if the primary server is not accepting connections.

    LoadBalancing=1

    Turns on client load balancing, which helps distribute new connections to keep RAC nodes from being overwhelmed with connection requests.

    When enabled, the order in which primary and alternate database servers are accessed is random.

The configuration is complete. Configure SiteMinder to use the data source you created.

More Information:

Configure an ODBC Database as a Policy Store