Applies for a read-only routing endpoint for an instance.
Operation description
Supported database engines
- MySQL
- SQL Server
Feature description
If read-only instances are attached to a primary ApsaraDB RDS for SQL Server instance, you can call this operation to apply for a unified read-only routing endpoint for the primary instance. After you apply for a read-only routing endpoint for a primary instance, the existing endpoints of the primary instance and its read-only instances remain valid. In addition, you can still apply for internal and public endpoints.
Prerequisites
Before you call this operation, make sure that the following requirements are met:
-
The shared proxy feature is enabled for your ApsaraDB RDS for MySQL instance.
-
The instance is in the Running state.
-
Read-only instances are attached to the primary instance.
-
The instance does not have an ongoing Data Transmission Service (DTS) migration task.
-
The instance runs one of the following database versions and RDS editions:
- SQL Server on RDS Cluster Edition
- MySQL 5.7 on RDS High-availability Edition (with local disks)
- MySQL 5.6
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
rds:AllocateReadWriteSplittingConnection | create |
|
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
DBInstanceId | string | Yes | The primary instance ID. You can call the DescribeDBInstances operation to query the primary instance ID. | rm-uf6wjk5xxxxxxx |
ConnectionStringPrefix | string | No | The prefix of the read-only routing endpoint. The prefix must be unique. It can be up to 30 characters in length and can contain lowercase letters and hyphens (-). It must start with a lowercase letter. Note
The default prefix consists of the name of the primary instance followed by the letters rw.
| rr-m5exxxxx-rw.mysql.rds.aliyuncs.com |
Port | string | No | The port that is associated with the read-only routing endpoint. Valid values: 1000 to 5999. Default value: 1433. | 1433 |
MaxDelayTime | string | No | The threshold of the latency that is allowed on the read-only instances. Valid values: 0 to 7200. Default value: 30. Unit: seconds. Note
If the latency on a read-only instance exceeds the specified threshold, ApsaraDB RDS does not forward read requests to the read-only instance.
| 30 |
NetType | string | No | The network type of the read-only routing endpoint. Valid values:
Note
The default value is Intranet. Make sure that the network type of the read-only routing endpoint is the same as that of the primary instance.
| Intranet |
DistributionType | string | No | The method that is used to assign read weights. Valid values:
| Standard |
Weight | string | No | The read weights of the primary instance and its read-only instances. The read weight is increased in increments of 100. The maximum value is 10000.
Note
| {"rm-bp1**********":800,"master":400,"slave":400} |
Response parameters
Examples
Sample success responses
JSON
format
{
"RequestId": "4C467B38-3910-447D-87BC-AC049166F216"
}
Error codes
HTTP status code | Error code | Error message | Description |
---|---|---|---|
400 | Order.ComboInstanceNotAllowOperate | A package instance is not allowed to operate independently. | A package instance is not allowed to operate independently. |
400 | Price.PricingPlanResultNotFound | Pricing plan price result not found. | Pricing plan price result not found. |
400 | Order.NoRealNameAuthentication | You have not passed the real-name authentication and do not meet the purchase conditions. Please log in to the user center for real-name authentication. | You have not passed the real-name authentication and do not meet the purchase conditions. Please log in to the cost and cost for real-name authentication. |
400 | InsufficientAvailableQuota | Your account quota limit is less than 0, please recharge before trying to purchase. | Your account available limit is less than 0, please recharge before trying to purchase. |
400 | CommodityServiceCalling.Exception | Failed to call commodity service. | Failed to call commodity service return. |
400 | RegionDissolvedEOM | Dear customer, Alibaba Cloud plans to optimize and adjust the current region. Cloud services in this region will cease operations. You are currently unable to operate new purchase orders. Thank you for your understanding and support. | Hello, Alibaba Cloud plans to optimize and adjust the current region. Cloud services in this region will stop operating. In order to ensure your business continuity and smooth transition of data migration, you are currently unable to operate new purchase orders. Thank you for your understanding and support. |
400 | Commodity.InvalidComponent | The module you purchased is not legal, please buy it again. | The module you purchased is not legal, please buy it again. |
400 | RegionEndTimeDissolvedIndia | Cloud services in the India (Mumbai) region will be discontinued. Set the validity date to July 15, 2024 or earlier than July 15, 2024. | Hello customer, this area has been abolished. |
400 | RegionEndTimeDissolvedAustralia | Cloud services in the Australia (Sydney) region will be discontinued. Set the validity date to September 30, 2024 or earlier than September 30, 2024. | Cloud services in the Australia (Sydney) region will be discontinued. Set the validity date to September 30, 2024 or earlier than September 30, 2024. |
400 | Price.CommoditySys | Commodity system call exception. | Commodity system call exception. |
400 | Pay.InsufficientBalance | Insufficient available balance. | Insufficient available balance. |
400 | Order.PeriodInvalid | There is a problem with the period you selected, please choose again. | There is a problem with the period you selected, please choose again. |
400 | pay.noCreditCard | Account not bound to credit card. | - |
400 | Order.InstHasUnpaidOrder | There is an unpaid order for the service you have purchased. Please pay or void it before placing the order. | There is an unpaid order for the service you have purchased. Please pay or void it before placing the order. |
400 | noAvailablePaymentMethod | No payment method is specified for your account. We recommend that you add a payment method. | - |
400 | BasicInfoUncompleted | Your information is incomplete. Complete your information before the operation. | Your basic information is not complete, please complete your basic information before operation. |
400 | Risk.RiskControlRejection | Your account is abnormal, please contact customer service for details. | Your account is abnormal, please contact customer service for details. |
400 | BasicInfoUncompleted | Your information is incomplete, Complete your information before the operation. | - |
400 | Api.NotSupport | Specified api is not supported. | The current interface does not support. |
400 | ContainForbiddenLabelError | There is a label that prohibits placing orders. Please contact your distributor for assistance. | You cannot place the order because a tag indicates that order placement is prohibited. Contact your distributor. |
400 | InvalidDBInstanceId.NotFound | The DBInstanceId provided does not exist in records. | The DBInstanceId provided does not exist. |
400 | InvalidInstanceLevel.DiskType | Specified instance level not support request disk type | The current instance type does not support the specified storage type. |
400 | InvalidParam | Sepcified wal level Parameter is invalid. There are still logical slots in instance, so it can not be set as replica. | The specified wal_level parameter is invalid. There is still a copy slot in the instance, so it cannot be set to replica. |
400 | KmsApiError | User secret key invalid. | The user key is invalid. |
400 | System.SaleValidateFailed | Sales expression validation system error. | A system error occurs when the sales expression is verified. |
400 | Abs.InvalidAccount.NotFound | account is not found. | The account does not exist. |
400 | SqlExecuteFailedOrTimeout | sql command execution failed or timed out:%s. | SQL command execution failed or timed out |
400 | ColdData.EngineVersionNotSupport | The current instance engine version not support coldDataEnabled. | The current instance engine version not support coldDataEnabled. |
400 | ColdData.MinorVersionNotSupport | The current instance minor version not support coldDataEnabled. | The current instance minor version not support coldDataEnabled. |
400 | IncorrectTargetClasscode | The current instance type does not support this operation. | This operation is not supported by the instance type. |
400 | InvalidConnectionString.Duplicate | Specified connection string already exists in the RDS. | The link address name is duplicate. Please reset the connection string. |
400 | RequiredParam.NotFound | Required input param is not found. | - |
403 | OrderStatus.UnPaid | The specified db instance has unpaid order. | The instance has an unpaid order. Please pay first and try again. |
403 | InvalidReduceDiskSize | The storage capacity after the scale-down must be larger than the used amount. | The scale-in target capacity cannot be less than the current storage space usage |
403 | CloudSSDNotSupport | Cloud ssd does not support this operation, please upgrade to essd. | - |
403 | InvalidUserOperatorPermission | The user permission does not support this operation. | The user is not authorized to perform this operation. |
403 | InvalidVswitchId | Specified conn vswitch id is not valid. | - |
404 | InvalidClusterKms | The current instance does not authorized to access the Key Management Service. | The instance does not have permissions to access Key Management Service (KMS). |
500 | ExternalFailure | The request processing has failed due to external service failure. | The request processing has failed due to external service failure. |
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|---|---|
2022-06-23 | API Description Update | View Change Details |