# How to connect Digibee to Oracle RAC

## **What is Oracle RAC?**

Oracle RAC (Real Application Cluster) transparently scales both reads and writes for all workloads, including OLTP, analytics, AI vectors, SaaS, JSON, batch, text, graph, Internet of Things (IoT), and in-memory. It offers a range of database computing benefits such as scalability, availability, load balancing, redundancy, and monitoring. Further information can be found on the [Oracle website](https://www.oracle.com/database/real-application-clusters/).

## **Connecting Oracle RAC to Digibee**

If you connect a pipeline to a database via a VPN (Virtual Private Network), the network topology prevents visibility of the nodes behind the Oracle SCAN Listener. As a result, the JDBC driver can’t connect to the node that the listener has returned as available to receive a connection.

<figure><img src="https://content.gitbook.com/content/boT4qPJIk6PZotrxlJWL/blobs/NrQluBXacnLRej1Gi836/image1.png" alt=""><figcaption></figcaption></figure>

To address this issue:

* Avoid using the SCAN Listener mapping.
* Inform the [Digibee Support team](https://docs.digibee.com/documentation/troubleshooting/help-and-faq/support) of the IPs of each node in the cluster’s database.
* Use a connection string with multiple hosts to ensure traffic and redundancy between hosts that can be handled by the connection string.​

<figure><img src="https://content.gitbook.com/content/boT4qPJIk6PZotrxlJWL/blobs/f9927lVxQsYqQBcidrp5/image2.png" alt=""><figcaption></figcaption></figure>

See the example below:

```
jdbc:oracle:thin:@(DESCRIPTION=
   (ADDRESS_LIST=
      (ADDRESS=(PROTOCOL=TCP)(HOST=10.158.xx.xxx)(PORT=1111))
      (ADDRESS=(PROTOCOL=TCP)(HOST=10.158.xx.xxx)(PORT=2222))
      (ADDRESS=(PROTOCOL=TCP)(HOST=10.158.xx.xxx)(PORT=3333))
      (FAILOVER=on)
      (LOAD_BALANCE=on)
   )
   (CONNECT_DATA=(SERVICE_NAME=SERVICENAME))
)
```
