This topic provides an overview of the read-only instances of ApsaraDB RDS for MySQL. If a large number of read requests overwhelm the primary instance, your business may be interrupted. In this situation, you can add one or more read-only instances to offload read requests from the primary instance and increase the throughput of your application.

For information about read-only instances in other database engines, see the following topics:

Background information

ApsaraDB RDS for MySQL replicates data from the secondary instance to every read-only instance you create. After data on the primary instance is updated, the updated data is replicated to each read-only instance. You can set a replication delay for a read-only instance. For more information, see Set a replication delay for an RDS MySQL read-only instance.

Note Each read-only instance works in a primary/secondary architecture to ensure high availability.

Prerequisites

The instance runs one of the following MySQL versions and RDS editions:

  • MySQL 8.0 in the Enterprise Edition
  • MySQL 8.0 in the High-availability Edition (with local or standard SSDs)
  • MySQL 5.7 in the Enterprise Edition
  • MySQL 5.7 in the High-availability Edition (with local or standard SSDs)
  • MySQL 5.6
Note If your instance running MySQL 5.7 in the Enterprise Edition does not support read-only instances, submit a ticket.

Billing

A read-only instance is billed on an hourly basis. The actual fee varies based on the instance type at the time of fee deduction. For more information, visit ApsaraDB RDS for MySQL pricing.

Features

  • Read-only instances use pay-as-you-go billing to reduce costs.
  • Read-only instances reside in the same region as the primary instance, but possibly in different zones.
  • The specifications of a read-only instance can differ from the specifications of the primary instance, and can be changed at any time. We recommend that the specifications of a read-only instance be greater than or equal to the specifications of the primary instance. If the specifications of a read-only instance are lower than the specifications of the primary instance, the read-only instance may encounter high latency or be unable to handle heavy loads.
  • The network type of a read-only instance can differ from that of the primary instance.
  • Read-only instances do not require database or account maintenance, because their database and account information is synchronized with the primary instance.
  • ApsaraDB RDS for MySQL automatically replicates the whitelists of the primary instance to every read-only instance you create. After a read-only instance is created, its whitelists are independent of the whitelists configured on the primary instance. For information about how to modify the whitelists of a read-only instance, see Configure a whitelist for an ApsaraDB RDS for MySQL instance.
  • Read-only instances support the monitoring and alerting for up to 20 performance metrics such as the disk capacity, IOPS, number of connections, CPU utilization, and network traffic.

Limits

  • The maximum number of read-only instances allowed varies based on the memory capacity.
    Database engine Memory capacity Maximum number of read-only instances
    MySQL ≥ 64 GB 10
    < 64 GB 5
  • You cannot configure backup policies or manually create backups for read-only instances, because these are already configured or created on the primary instance.
  • Take note of the following limits on instance restoration:
    • You cannot create a temporary read-only instance from a data backup file or a specific point in time, nor can you overwrite a read-only instance by using a data backup file.
    • After a read-only instance is created, you cannot use a data backup file to restore it in overwrite mode.
  • You cannot migrate data to read-only instances.
  • You cannot create or delete databases on read-only instances.
  • You cannot create or delete accounts, authorize accounts, or change the passwords of accounts on read-only instances.

Instance creation

For more information, see Create an RDS MySQL read-only instance.

FAQ

  • Can I manage accounts created on a primary instance from its read-only instances?

    No, although the accounts created on a primary instance are synchronized to its read-only instances, they cannot be managed on the read-only instances. In addition, the accounts only have read permissions on the read-only instances.

  • Can I pause the fee deduction for read-only instances? And can I set the read weights of read-only instances to 0 to stop the billing?

    No, you cannot pause the fee deduction for read-only instances, because they are billed on an hourly basis. However, you can release the read-only instances when you no longer need them. For more information, see Release an RDS MySQL instance.