Configuring Oracle Data Guard for IBM Business Process Manager

You can configure Oracle Data Guard to be used with IBM® Business Process Manager. Oracle Data Guard provides high availability, disaster recovery, and data protection and is used to create, manage, and monitor one or more standby databases so that production Oracle databases can survive disasters and data corruptions.

When IBM Business Process Manager is configured to use Oracle Data Guard, you typically have one production database, which is your primary database, and several standby databases. Then Oracle Data Guard automatically maintains each standby database by transmitting redo data from the primary database and applying the redo data to the standby database. If your production database becomes unavailable because of a planned or an unplanned outage, Oracle Data Guard enables you to switch any standby database to the production role, minimizing the downtime that is associated with the outage.

Oracle Data Guard automatically maintains each standby database by transmitting redo data from the primary database and then applying the redo to the standby database.

A Typical Data Guard Configuration

A Typical Data Guard Configuration

Procedure

  1. Set up the Oracle Data Guard environment.
  2. Create a database service from the primary database:
    Exec DBMS_SERVICE.CREATE_SERVICE('BPM','BPM');
  3. Create a trigger from the primary database by running the following command:
    CREATE OR REPLACE TRIGGER START_SERVICES AFTER STARTUP ON DATABASE 
    DECLARE
     ROLE VARCHAR(30);
    BEGIN 
     SELECT DATABASE_ROLE INTO ROLE FROM V$DATABASE;
     IF ROLE = 'PRIMARY' THEN
      DBMS_SERVICE.START_SERVICE('ORCL');  END IF;
    END; 
    /
    Note: When you start a database, your primary database always starts a BPM service. Therefore, your client always connects to the primary database.
  4. Restart the primary database or start the following service by running the following command:
    EXEC DBMS_SERVICE.START_SERVICE('BPM');

What to do next

When configuring your IBM BPM deployment environment, you must specify the Oracle Net connection descriptor URL in the bpm.de.db.#.url property, as described in the topic Configuration properties for the BPMConfig command.

IBM Business Process Manager creates the JDBC URL in the following default format:

jdbc:oracle:thin:@//LISTENER_HOST:LISTENER_PORT/SERVICE_NAME

To use the Net connection descriptor URL, specify it in a format similar to the following example (but in a single input line) using the bpm.de.db.#.url property:

jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=
                  (ADDRESS=(PROTOCOL=TCP)(HOST=host_A)(PORT=1521))
                  (ADDRESS=(PROTOCOL=TCP)(HOST=host_B)(PORT=1521))
                  (LOAD_BALANCE=off)(FAILOVER=on))
                  (CONNECT_DATA=(SERVICE_NAME=service_name)))