调用ModifyReadWriteSplittingConnection接口修改读写分离链路的延迟阈值和各个实例的读权重。

调用该接口时,实例必须满足以下条件,否则将操作失败:

  • MySQL实例使用的是共享代理。
  • MySQL实例已开通读写分离。
  • 实例为如下版本:
    • MySQL 5.7高可用版(本地SSD盘)
    • MySQL 5.6
    • SQL Server集群版

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String ModifyReadWriteSplittingConnection

系统规定参数。取值:ModifyReadWriteSplittingConnection

DBInstanceId String rm-uf6wjk5xxxxxxx

主实例ID。

ConnectionStringPrefix String rm-m5xxxxxxxxrw.mysql.rds.aliyuncs.com

读写分离地址前缀名,不可重复,由小写字母和中划线组成,需以字母开头,长度不超过30个字符。

说明 默认以“实例名+rw”字符串组成前缀。
Port String 3306

读写分离地址端口号。

MaxDelayTime String 12

延迟阈值,单位为秒。当只读实例延迟时间超过该阈值时,读取流量不发往该实例。不传该参数则保持原值。

说明
  • 参数MaxDelayTime不适用于SQL Server 2017集群版实例。
  • 至少传入MaxDelayTimeDistributionType中的一个。
DistributionType String Standard

读权重分配模式,取值:

  • Standard:按规格权重自动分配
  • Custom:自定义分配权重
说明 至少传入MaxDelayTimeDistributionType中的一个。
Weight String {"rm-bp1**********":800,"master":400,"slave":400}

读权重分配,即传入主实例和只读实例的读请求权重。以100递增,最大值为10000。

  • RDS实例格式:{"<只读实例ID>":<权重>,"master":<权重>,"slave":<权重>}
  • MyBASE实例格式:[{"instanceName":"<主实例ID>","weight":<权重>,"role":"master"},{"instanceName":"<主实例ID>","weight":<权重>,"role":"slave"},{"instanceName":"<只读实例ID>","weight":<权重>,"role":"master"}]
说明
  • DistributionTypeCustom时,必须传入该参数。
  • DisrtibutionTypeStandard时,传入该参数无效。

返回数据

名称 类型 示例值 描述
RequestId String 5A77D650-27A1-4E08-AD9E-59008EDB6927

请求ID。

示例

请求示例

http(s)://rds.aliyuncs.com/?Action=ModifyReadWriteSplittingConnection
&DistributionType=Standard
&DBInstanceId=rm-uf6wjk5xxxxxxx
&<公共请求参数>

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<?xml version="1.0" encoding="UTF-8" ?>
<ModifyReadWriteSplittingConnectionResponse>
	<RequestID>5A77D650-27A1-4E08-AD9E-59008EDB6927</RequestID>
</ModifyReadWriteSplittingConnectionResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestID" : "5A77D650-27A1-4E08-AD9E-59008EDB6927"
}

错误码

HttpCode 错误码 错误信息 描述
400 ReadUniformNetTypeNotExists The specified uniform read only network type does not exist. 操作失败,指定统一只读网络类型不存在。
400 ReadDBInstance.NotFound The Current DB Instance has not read-only instance. 操作失败,当前数据库实例没有只读实例。
403 ReadDBInstance.NotFound The current database instance does not contain any read only instance. 当前数据库实例没有只读实例。

访问错误中心查看更多错误码。