All Products
Search
Document Center

ApsaraDB RDS:AllocateReadWriteSplittingConnection

Last Updated:Sep 27, 2024

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

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer.

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.
OperationAccess levelResource typeCondition keyAssociated operation
rds:AllocateReadWriteSplittingConnectioncreate
  • DBInstance
    acs:rds:{#regionId}:{#accountId}:dbinstance/{#dbinstanceId}
  • rds:ResourceTag
none

Request parameters

ParameterTypeRequiredDescriptionExample
DBInstanceIdstringYes

The primary instance ID. You can call the DescribeDBInstances operation to query the primary instance ID.

rm-uf6wjk5xxxxxxx
ConnectionStringPrefixstringNo

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
PortstringNo

The port that is associated with the read-only routing endpoint. Valid values: 1000 to 5999. Default value: 1433.

1433
MaxDelayTimestringNo

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
NetTypestringNo

The network type of the read-only routing endpoint. Valid values:

  • Internet
  • Intranet
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
DistributionTypestringNo

The method that is used to assign read weights. Valid values:

  • Standard: The system automatically assigns read weights to the primary and read-only instances based on the specifications of these instances.
  • Custom: You must manually assign a read weight to each instance.
Standard
WeightstringNo

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.

  • For ApsaraDB RDS instances, the value of this parameter is in the following format: {"<ID of the read-only instance >":<Weight>,"master":<Weight>,"slave":<Weight>}.
  • For ApsaraDB MyBase instances, the value of this parameter is in the following format: [{"instanceName":"<Primary instance ID>","weight":<Weight>,"role":"master"},{"instanceName":"<Primary instance ID>","weight":<Weight>,"role":"slave"},{"instanceName":"<Read-only instance ID>","weight":<Weight>,"role":"master"}]
Note
  • This parameter must be specified when DistributionType is set to Custom.

  • If DistributionType is set to Standard, this parameter is invalid.

{"rm-bp1**********":800,"master":400,"slave":400}

Response parameters

ParameterTypeDescriptionExample
object

The response parameters.

RequestIdstring

The request ID.

4C467B38-3910-447D-87BC-AC049166F216

Examples

Sample success responses

JSONformat

{
  "RequestId": "4C467B38-3910-447D-87BC-AC049166F216"
}

Error codes

HTTP status codeError codeError messageDescription
400Order.ComboInstanceNotAllowOperateA package instance is not allowed to operate independently.A package instance is not allowed to operate independently.
400Price.PricingPlanResultNotFoundPricing plan price result not found.Pricing plan price result not found.
400Order.NoRealNameAuthenticationYou 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.
400InsufficientAvailableQuotaYour 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.
400CommodityServiceCalling.ExceptionFailed to call commodity service.Failed to call commodity service return.
400RegionDissolvedEOMDear 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.
400Commodity.InvalidComponentThe module you purchased is not legal, please buy it again.The module you purchased is not legal, please buy it again.
400RegionEndTimeDissolvedIndiaCloud 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.
400RegionEndTimeDissolvedAustraliaCloud 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.
400Price.CommoditySysCommodity system call exception.Commodity system call exception.
400Pay.InsufficientBalanceInsufficient available balance.Insufficient available balance.
400Order.PeriodInvalidThere is a problem with the period you selected, please choose again.There is a problem with the period you selected, please choose again.
400pay.noCreditCardAccount not bound to credit card.-
400Order.InstHasUnpaidOrderThere 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.
400noAvailablePaymentMethodNo payment method is specified for your account. We recommend that you add a payment method.-
400BasicInfoUncompletedYour information is incomplete. Complete your information before the operation.Your basic information is not complete, please complete your basic information before operation.
400Risk.RiskControlRejectionYour account is abnormal, please contact customer service for details.Your account is abnormal, please contact customer service for details.
400BasicInfoUncompletedYour information is incomplete, Complete your information before the operation.-
400Api.NotSupportSpecified api is not supported.The current interface does not support.
400ContainForbiddenLabelErrorThere 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.
400InvalidDBInstanceId.NotFoundThe DBInstanceId provided does not exist in records.The DBInstanceId provided does not exist.
400InvalidInstanceLevel.DiskTypeSpecified instance level not support request disk typeThe current instance type does not support the specified storage type.
400InvalidParamSepcified 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.
400KmsApiErrorUser secret key invalid.The user key is invalid.
400System.SaleValidateFailedSales expression validation system error.A system error occurs when the sales expression is verified.
400Abs.InvalidAccount.NotFoundaccount is not found.The account does not exist.
400SqlExecuteFailedOrTimeoutsql command execution failed or timed out:%s.SQL command execution failed or timed out
400ColdData.EngineVersionNotSupportThe current instance engine version not support coldDataEnabled.The current instance engine version not support coldDataEnabled.
400ColdData.MinorVersionNotSupportThe current instance minor version not support coldDataEnabled.The current instance minor version not support coldDataEnabled.
400IncorrectTargetClasscodeThe current instance type does not support this operation.This operation is not supported by the instance type.
400InvalidConnectionString.DuplicateSpecified connection string already exists in the RDS.The link address name is duplicate. Please reset the connection string.
400RequiredParam.NotFoundRequired input param is not found.-
403OrderStatus.UnPaidThe specified db instance has unpaid order.The instance has an unpaid order. Please pay first and try again.
403InvalidReduceDiskSizeThe 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
403CloudSSDNotSupportCloud ssd does not support this operation, please upgrade to essd.-
403InvalidUserOperatorPermissionThe user permission does not support this operation.The user is not authorized to perform this operation.
403InvalidVswitchIdSpecified conn vswitch id is not valid.-
404InvalidClusterKmsThe current instance does not authorized to access the Key Management Service.The instance does not have permissions to access Key Management Service (KMS).
500ExternalFailureThe 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 timeSummary of changesOperation
2022-06-23API Description UpdateView Change Details