# Adding Disaster Replica

A Disaster Recovery (DR) Replica is a cross-region, read-only copy of your Primary MySQL DB instance, designed to ensure high availability and business continuity in the event of a regional failure. It enables you to quickly recover operations in a different geographic region by maintaining a live replica of your data.

Tessell uses MySQL’s native Group Replication and extends it across regions to create a DR replica. Data from the primary DB instance is replicated asynchronously to the DR replica. Unlike a regular read replica, DR replicas are specifically designed for disaster recovery purposes, with support for manual failover and promotion workflows in the event of a regional outage.

The following diagram shows creating a DR Replica:

<figure><img src="https://3421475909-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXNKiIctERJykfezXfUU2%2Fuploads%2FV3aOunvdDnA27EmASF27%2Funknown.png?alt=media&#x26;token=5289670a-ef43-44d5-9466-13def1159e42" alt="" width="563"><figcaption></figcaption></figure>

***

### Prerequisites

Before creating a DR Replica, ensure the following:

* A MySQL DB service must already be provisioned.
* Every table in the database must have a primary key or an equivalent unique key (a requirement for MySQL Group Replication).
* Every table must use the InnoDB storage engine.
* The target destination region must be registered in Tessell Platform.

***

### Steps to Create a DR Replica

Follow the steps below to create a DR Replica using the Tessell Console:

1. Sign in to the Tessell Console.

2. From the left navigation pane, go to **DB Services** and open the **My Services** App.

3. Locate and select your MySQL DB service for which you want to create a DR replica.

4. Navigate to the **Instances** tab.

5. Click **Create Replica** in the right-hand pane, then select **Disaster Recovery** from the dropdown list.

6. Fill the required details:

   1. **Instance Name**: Specify a unique name for the read replica.
   2. **Region**: Select a different region from that of the primary DB instance.
   3. **Availability Zone**: Choose your preferred AZ within the selected region.
   4. **VPC/VNet**: Select the Virtual Private Cloud (VPC) or network.
   5. **Private Subnet**: Choose the subnet for the replica.

   <figure><img src="https://3421475909-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FXNKiIctERJykfezXfUU2%2Fuploads%2FsWMjtsZL1Gy2Twfpejnl%2Funknown.png?alt=media&#x26;token=351f511b-026e-4c6e-8b6f-3810ac94301f" alt=""><figcaption></figcaption></figure>

7. Click **Add Instance** to start the replica creation process.

After the DR replica is successfully created, navigate back to the **Instances** page in the Tessell Console. The newly added instance appears in the list with the **Role** column indicating as **DR Replica**. In the event of a disaster, the DR replica can be promoted to take over as the new primary (manual action required).

***

### Limitations

* DR Replica can only be created after the MySQL DB service is provisioned.
* DR Replica must use the same compute shape as the primary DB instance.
* DR Replica must use the same parameter profile as the primary DB instance.
* DR Replica must use the same option profile as the primary DB instance.
* Failover to a DR replica is a manual operation through Tessell UI/API call (no auto-failover).
