RDS High-availability Edition runs on a primary/secondary architecture that automatically handles failover, making it the default choice for production SQL Server workloads. It covers more than 80% of use cases across industries such as Internet services, IoT, online retail, logistics, and gaming.
Secondary instances in RDS High-availability Edition are reserved for disaster recovery only and cannot serve read traffic. To route read queries to secondary instances, upgrade to RDS Cluster Edition and enable read/write splitting.
Choose an edition
Use the following table to compare RDS editions before you create an instance.
| Edition | Architecture | Secondary readable | Typical use case |
|---|---|---|---|
| RDS Basic Edition | Standalone (no hot standby) | N/A | Development and testing |
| RDS High-availability Edition | Primary/secondary | No | Production workloads requiring high availability |
| RDS Cluster Edition | Primary/secondary | Yes (after enabling read/write splitting) | High-concurrency reads, read-heavy workloads |
Topology
How it works
Data replication
The primary instance replicates data to the secondary instance using either semi-synchronous mode or asynchronous mode. The replication mode is determined by the parameter template you select.
For SQL Server instances on RDS High-availability Edition, the data replication mode can only be queried, not changed. If the secondary instance handles heavier workloads than the primary, the mode automatically switches to asynchronous mode.
Failover
If the primary instance becomes inaccessible, ApsaraDB RDS automatically fails over to the secondary instance.
Deployment zones
Deploy the primary and secondary instances in different zones within the same region to enable cross-zone disaster recovery and improve availability. Both instances must remain in the same region.
If the secondary instance becomes inaccessible, the primary instance continues to accept writes and backs up data in real time. When the backup nears completion, FLUSH TABLE WITH READ LOCK (FTWRL) runs and holds a global lock for up to 5 seconds, placing the primary instance in read-only mode temporarily.Features
RDS High-availability Edition includes the following capabilities:
Backup and restoration: Automatically back up your databases and restore to a previous point in time.
Performance optimization: Access built-in tools to monitor and tune query performance.
SQL Explorer: Store logs of all executed SQL statements for up to five years. Use these logs to audit database operations and investigate security incidents.
Limitations
The primary and secondary instances must be in the same region.
Secondary instances cannot serve read traffic. This limitation does not apply to RDS Cluster Edition.
Upgrade from RDS Basic Edition
RDS Basic Edition uses a standalone architecture with no hot standby. If the instance fails or undergoes a specification change or database engine upgrade, your workloads may experience extended downtime.
To minimize downtime risk in production, upgrade to RDS High-availability Edition. The upgrade does not require data migration or reclaiming the original instance.
To upgrade, see Upgrade from Basic Edition to High-availability Edition.
To create a new instance with RDS High-availability Edition from the start, see Create an ApsaraDB RDS for SQL Server instance.
FAQ
Can I directly access a secondary instance?
No. Secondary instances in RDS High-availability Edition handle disaster recovery only and are not accessible to external services. To read from secondary instances, upgrade to RDS Cluster Edition and enable read/write splitting. For details, see Configure the read attribute for a secondary RDS instance.
Can I downgrade from RDS High-availability Edition to RDS Basic Edition?
No. Downgrade is not supported directly. To move to RDS Basic Edition, purchase a new Basic Edition instance, migrate your data using DTS, and then release the original instance.
Can I change the data replication mode on my SQL Server instance?
No. For SQL Server instances on RDS High-availability Edition, you can query the data replication mode but cannot change it. For more information, see Query and change the data replication mode.
Does the data replication mode switch to asynchronous if my secondary instance is under heavy load?
Yes. If the secondary instance handles heavier workloads than the primary, the replication mode automatically changes to asynchronous mode. For details, see Data replication modes.