---
title: How to manage Read Replicas
description: Learn how to manage Read Replicas for your PostgreSQL and MySQL databases.
tags: managed-database read replicas read-replicas
dates:
  validation: 2025-10-16
  posted: 2021-09-21
---
import Requirements from '@macros/iam/requirements.mdx'

A Read Replica is a live copy of a Database Instance that behaves like an Instance, but that only allows read-only connections. The replica mirrors the data of the primary Database node and any changes made are replicated to the replica asynchronously.

[Read Replicas](/managed-databases-for-postgresql-and-mysql/concepts/#read-replica) allow you to scale your Database Instance for read-heavy database workloads. They can also be used for business intelligence workloads.

<Requirements />

- A Scaleway account logged into the [console](https://console.scaleway.com)
- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization
- A [PostgreSQL or MySQL Database Instance](/managed-databases-for-postgresql-and-mysql/quickstart/)

## Create a Read Replica

1. Click **PostgreSQL and MySQL** under **Databases** on the side menu. A list of your Database Instances displays.
2. Select the geographical region of the Instance you want to manage from the drop-down.
3. Click the database name or <Icon name="more" /> > **More info** to access the Database Instance information page.
4. Scroll down to the **Read Replica** section.
5. Click **Create Read Replica**. A pop-up displays.
6. Select the Availability Zone (AZ) configuration. Two configurations are available:

    - **Same AZ**: Your Read Replica is hosted in the same AZ as your main Database Instance. We recommend this option for low-latency workflows.
    - **Multi-AZ**: Your Read Replica is hosted in a different AZ, ensuring the resilience of your Replica. We recommend this option for ensuring the availability of your infrastructure, and improving your disaster recovery plan.

7. Select the network type. Two types are available:

    - **Public network** - Resources in a public network are publicly visible by default. The default Access Control List (ACL) settings allow anybody to connect to resources in your network. You can restrict access by configuring ACLs in the Allowed IPs section.
    - **Private Networks** - Private Networks allow you to create virtual Private Networks for your Databases, enabling them to communicate in an isolated network without the need for a public IP address. If you select this option, you must select an existing Private Network to attach to your Read Replica.

    <Message type="note">
    Your private IP addresses are automatically allocated. They are managed via an IP Address Manager (IPAM). You can retrieve them on the Private Network tab of your Database Instance. To allocate IPs manually, you can use the Scaleway API and CLI, or Terraform/OpenTofu.
    </Message>

    <Message type="important">
    If you select **Public network**, you can [attach a Private Network](/managed-databases-for-postgresql-and-mysql/how-to/manage-read-replicas/#how-to-manage-private-networks) to your Read Replica after its creation. If you choose to attach your Read Replica to a Private Network, you will not be able to add a Public Network to the same Read Replica later via the Scaleway console. You can, however, use the [Managed Databases API](https://www.scaleway.com/en/developers/api/managed-databases-for-postgresql-and-mysql/) to do so via a command line or Terraform/OpenTofu.
    </Message>
8. Click **Create Read Replica**. A list of your Read Replicas displays.
    <Message type="important">
    Read Replicas have the same node types as the main node. For example, if your main node is of the DB-GP-S type, so is your Read Replica. The Replica also inherits the main node's configuration. The data of your main node is fully replicated in the Read Replica.
    </Message>

    <Message type="note">
      The time it takes to create the Read Replica depends on the volume of data being replicated.
    </Message>

## How to resync a Read Replica

When you resync a Read Replica, first it is reset, and then its data is resynchronized from the primary node. Your Read Replica will be unavailable during the resync process. The duration of this process is proportional to your Database Instance size. The configured endpoints will not change.

1. Click **PostgreSQL and MySQL** under **Databases** on the side menu. A list of your Database Instances displays.
2. Select the geographical region of the Instance you want to manage from the drop-down.
3. Click the database name or <Icon name="more" /> > **More info** to access the Database Instance information page.
4. Scroll down to the **Read Replica** section.
5. Click <Icon name="more" /> > **Resync** next to the name of the Read Replica you want to resync. A pop-up displays.
6. Make sure you have selected the correct Read Replica and click **Resync**. The list of your Read Replicas displays.

<Message type="important">
  Your Read Replica will be unavailable during the resync process. The duration of this process is proportional to your Database Instance size. The configured endpoints will not change.
</Message>

## How to promote a Read Replica

It is possible to promote a Read Replica node to a standalone Database Instance.

1. Click **PostgreSQL and MySQL** under **Databases** on the side menu. A list of your Database Instances displays.
2. Select the geographical region of the Instance you want to manage from the drop-down.
3. Click the database name or <Icon name="more" /> > **More info** to access the Database Instance information page.
4. Scroll down to the **Read Replica** section.
5. Click <Icon name="more" /> > **Promote Read Replica** next to the name of the Read Replica you want to promote. A pop-up displays.
    <Message type="important">
      Promoting a Read Replica is irreversible. Make sure that the main Database Instance node has completed all ongoing operations, and that the Read Replica lag is down to zero before promoting it. This helps ensure that the promoted Read Replica contains all operations from the main node.
    </Message>

    <Message type="note">
      If the Read Replica you promote is attached to a Private Network, the resulting node will also be attached to the same Private Network. It will maintain the same private endpoint.
    </Message>
6. Click **Promote Read Replica**.
7. Go back to the list of your Database Instances. The promoted Read Replica appears.
    <Message type="important">
      The new Instance originating from the Read Replica promotion will bear the prefix `promoted`, followed by the name of the original Database Instance that was replicated. You can change the name of your Database Instance on its overview page anytime. To do so, click <Icon name="edit" /> next to its name.
    </Message>

## How to manage Private Networks

You can attach and detach your Read Replica to a Private Network even after its creation.

### Attach your Read Replica to a new Private Network

1. Click **PostgreSQL and MySQL** under **Databases** on the side menu. A list of your Database Instances displays.
2. Select the geographical region of the Instance you want to manage from the drop-down.
3. Click the database name or <Icon name="more" /> > **More info** to access the Database Instance information page.
4. Scroll down to the **Read Replica** section.
5. Click <Icon name="more" /> > **Attach Private Network** next to the name of your selected Read Replica. A pop-up displays.
6. Select **Create and attach a new Private Network**.
    <Message type="important">
      Your private IP addresses are automatically allocated. They are managed via an IP Address Manager (IPAM). You can retrieve them on the Private Network tab of your Database Instance. To allocate IPs manually, you can use the Scaleway API and CLI, or Terraform/OpenTofu.
    </Message>
7. Click **Attach Private Network**.

### Attach your Read Replica to an existing Private Network

1. Click **PostgreSQL and MySQL** under **Databases** on the side menu. A list of your Database Instances displays.
2. Select the geographical region of the Instance you want to manage from the drop-down.
3. Click the Database Instance name or <Icon name="more" /> > **More info** to access the Database Instance information page.
4. Scroll down to the **Read Replica** section.
5. Click <Icon name="more" /> > **Attach Private Network** next to the name of your selected Read Replica. A pop-up displays.
6. Select an existing Private Network to attach to your Read Replica.
    <Message type="important">
      Your private IP addresses are automatically allocated. They are managed via an IP Address Manager (IPAM). You can retrieve them on the Private Network tab of your Database Instance. To allocate IPs manually, you can use the Scaleway API and CLI, or Terraform/OpenTofu.
    </Message>
7. Click **Attach to Private Network** to confirm.

### Detach your Read Replica from a Private Network

If you already have an attached Private Network, you can detach it from your Read Replica.

1. Click **PostgreSQL and MySQL** under **Databases** on the side menu. A list of your Database Instances displays.
2. Select the geographical region of the Instance you want to manage from the drop-down.
3. Click the database name or <Icon name="more" /> > **More info** to access the Database Instance information page.
4. Scroll down to the **Read Replica** section.
5. Click <Icon name="more" /> > **Detach Private Network** next to the name of your selected Read Replica. A pop-up displays to ask if you are sure you want to detach the Private Network.
6. Click **Detach Private Network** to proceed. The list of your Read Replicas displays. The private endpoint is removed.

## How to delete a public endpoint

Refer to the [How to delete a public endpoint](/managed-databases-for-postgresql-and-mysql/how-to/remove-public-endpoint/#from-read-replicas) documentation page to do so for your Read Replica.

## How to delete Read Replicas

1. Click **PostgreSQL and MySQL** under **Databases** on the side menu. A list of your Database Instances displays.
2. Select the geographical region of the Instance you want to manage from the drop-down.
3. Click the database name or <Icon name="more" /> > **More info** to access the Database Instance information page.
4. Scroll down to the **Read Replica** section.
5. Click <Icon name="more" /> > **Delete**. A pop-up appears.
    <Message type="important">
      This is an irreversible that action permanently deletes your Read Replica and all its associated endpoints.
    </Message>
6. Click **Delete Read Replica** to do so. The list of your Read Replicas displays.


