We had to recently implement Oracle Datagaurd for websphere portal.
What is Oracle Datagaurd ?
Oracle Data Guard ensures high availability, data protection, and disaster recovery for enterprise data. Data Guard provides a comprehensive set of services that create, maintain, manage, and monitor one or more standby databases to enable production Oracle databases to survive disasters and data corruptions. Data Guard maintains these standby databases as transactionally consistent copies of the production database. Then, if the production database becomes unavailable because of a planned or an unplanned outage, Data Guard can switch any standby database to the production role, minimizing the downtime associated with the outage. Data Guard can be used with traditional backup, restoration, and cluster techniques to provide a high level of data protection and data availability.
Usually datagaurd URL which should be working is below in most of enterprise applications is below
jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS_LIST =(ADDRESS=(PROTOCOL=tcp)(HOST=SERVER1)(PORT=1524))(ADDRESS=(PROTOCOL=tcp)(HOST=SERVER2)(PORT=1524)))(LOAD_BALANCE = no)(FAILOVER = yes)(CONNECT_DATA =(SERVICE_NAME = wpsprd)(SERVER = DEDICATED)(FAILOVER_MODE =(TYPE = select)(METHOD = BASIC)(RETRIES = 18000)(DELAY = 2))))
For some reason this does not work with websphere portal, as a workaround we updated websphere portal server host file with an entry like below.
datagaurd Database server1 IP
#datagaurd Database server2 IP
Updated all JDBC URL’s replacing server name with datagaurd.
After updating the jdbc url, we need to run the following commands:
./ConfigEngine.sh validate-database-driver -DWasPassword=XXXXX
./ConfigEngine.sh validate-database-connection -DWasPassword=XXXXX
./ConfigEngine.sh connect-database -DWasPassword=XXXXX