ApsaraDB RDS for SQL Server Cluster Edition runs a high availability (HA) architecture with one primary instance and one secondary instance. By default, the secondary instance is neither readable nor writable. Enabling read/write splitting or the secondary node read-only endpoint makes the secondary database readable — reducing your cloud migration costs and eliminating the need to purchase a dedicated read-only instance.
How it works
Two endpoints can make the secondary database readable. The read and write capabilities of the primary and secondary nodes depend on which endpoint is enabled:
| Endpoint state | Primary node | Secondary node |
|---|---|---|
| Neither endpoint enabled | Readable and writable | Neither readable nor writable |
| Secondary node read-only endpoint enabled | Readable and writable | Read-only. Routes traffic exclusively to the secondary node. Cannot reach the primary node or read-only instances. |
| Read/write splitting (unified read-only endpoint) enabled | Readable and writable | Read-only. Distributes reads across all nodes according to read weight distribution. |
Choose based on your use case:
Use the secondary node read-only endpoint when you need direct, predictable access to the secondary node — for example, for reporting workloads or administrative queries isolated from the primary.
Use read/write splitting when you want to distribute read traffic across multiple nodes (primary, secondary, and read-only instances) to maximize throughput.
Prerequisites
Before you begin, verify the following on the Basic Information page of your instance:
Instance version: SQL Server 2017 Enterprise Cluster Edition, 2019 Enterprise Cluster Edition, 2022 Enterprise Cluster Edition, or 2025 Enterprise Cluster Edition
Instance edition: Cluster Edition
Storage type: Enterprise SSD (ESSD)
Billing method: Subscription or pay-as-you-go (Serverless instances are not supported)
Enable read/write splitting
Log in to the ApsaraDB RDS console. In the top navigation bar, select the region where the instance resides, then click the instance ID.
In the left navigation pane, click Cluster Management.
Configure the read-only endpoint:
If read/write splitting is not yet enabled: Click Enable Read-only Endpoint. In the dialog box, set Endpoint Type and Weight Distribution.
If read/write splitting is already enabled: Click Configure Readonly Splitting Address. In the dialog box, set Weight Distribution.

For Weight Distribution, choose one of the following options:
Automatic Distribution: The system assigns read weights based on instance specifications. New read-only instances are automatically included in the read/write splitting link with a system-assigned weight.
Customized Distribution: Set a read weight for each instance manually. Valid values: 0–10,000. New read-only instances default to a weight of 0 — update the weight manually before routing traffic to them.
A higher weight means more read requests are routed to that instance. For example, three read-only instances with weights 100, 200, and 200 receive read traffic in a ratio of 1:2:2.
If you delete a read-only instance, its weight is removed automatically. Weights for other instances remain unchanged.
Click OK.
Enable the secondary node read-only endpoint
After enabling this endpoint, all traffic through it goes exclusively to the secondary node. It cannot reach the primary node or read-only instances.
Go to the RDS Instances page. Select a region, then click the target instance ID.
In the left navigation pane, click Cluster Management.
In the Secondary Instance Network Information section, click Enable Secondary Instance Endpoint and set the Endpoint Type.
Click OK.
API reference
To request a read-only endpoint programmatically, call AllocateReadWriteSplittingConnection.