Enabling failover in a multiple node Oracle RAC database cluster (UNIX/Linux)
About this task
To enable failover in a multiple node Oracle RAC database cluster in UNIX/Linux, do the following:
Procedure
- Navigate to the
<INSTALL_DIR>/properties
directory, where you will modify thesandbox.cfg
andcustomer_overrides.properties
files.Note: You might need to create thecustomer_overrides.properties
file, which is just for customizations and is not automatically created during an installation. . - In the
sandbox.cfg
file, add a new property for ORACLE_JDBC_URL which contains the Oracle RAC connection URL.The following example shows the suggested URL form. This example shows how the information is organized, but the property value must be one string of text, starting with ORACLE_JDBC_URL=. Your database administrator (DBA) can modify this URL as needed.
jdbc:oracle:thin:@ (DESCRIPTION= (ADDRESS_LIST= (FAILOVER=ON) (LOAD_BALANCE=ON) (ADDRESS=(PROTOCOL=TCP)(HOST=myhost1)(PORT=1521)) (ADDRESS=(PROTOCOL=TCP)(HOST=myhost2)(PORT=1521)) ) (CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = myservicename)) )
- In the
customer_overrides.properties
file, add the readTimeout property to all Oracle database pools. These values override the corresponding values in thejdbc.properties
file.jdbcService.oraclePool.prop_jdbc.readTimeout=90000
jdbcService.oraclePool_local.prop_jdbc.readTimeout=90000
jdbcService.oraclePool_NoTrans.prop_jdbc.readTimeout=90000
jdbcService.oraclePool_NoTrans.prop_jdbc.readTimeout=90000
The readTimeout value will require tuning. If the value is too low, long-running queries in the system will be interrupted. If the value is too high, recovery when a RAC node fails will be delayed.
- Run the
setupfiles.sh
command from the<INSTALL_DIR>/bin
directory. - Set the propagation delay on the RAC server to 0.