ModifyDBClusterEndpoint - 修改PolarDB的集群地址属性

修改PolarDB的集群地址属性,包括读写模式、新节点是否自动加入本地址、一致性级别、事务拆分、主库是否接受读、连接池等。

调试

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

授权信息

当前API暂无授权信息透出。

请求参数

名称类型必填描述示例值
DBClusterIdstring

集群 ID。

pc-*************
DBEndpointIdstring

集群地址 ID。

pe-**************
Nodesstring

加入目标地址的读负载节点,多个节点间用英文逗号(,)分隔。 默认为原有节点。

说明
  • PolarDB MySQL 版需要传入节点 ID。
  • PolarDB PostgreSQL 版和 PolarDB PostgreSQL 版(兼容 Oracle)需要传入节点角色名称,例如Writer,Reader1,Reader2
  • ReadWriteMode 取值为 ReadOnly 时,支持只挂载一个节点。但当此节点故障时,该地址可能会有最多 1 小时的不可用,请勿用于生产环境。因此,推荐至少选择 2 个节点,以提升可用性。
  • ReadWriteMode 取值为 ReadWrite 时,至少要选择 2 个节点。 * PolarDB MySQL 版支持选择任意两个节点。当两个节点都是只读节点时,写请求都会发往主节点。 * PolarDB PostgreSQL 版和 PolarDB PostgreSQL 版(兼容 Oracle)必须包含主节点。
  • pi-**************,pi-*************
    ReadWriteModestring

    读写模式,取值范围如下:

    • ReadWrite:可读可写(自动读写分离)
    • ReadOnly:只读
    ReadWrite
    AutoAddNewNodesstring

    新节点是否自动加入本地址,取值范围如下:

    • Enable:是
    • Disable:否(默认值)
    Enable
    EndpointConfigstring

    集群地址的高级配置,格式为 JSON,目前支持设置一致性级别、事务拆分、主库是否接受读和连接池等。

    • 设置负载均衡策略,格式为{\"LoadBalancePolicy\":\"负载均衡策略\"}。取值范围如下:

      • 0:基于连接数负载均衡(默认)
      • 1:基于活跃请求数负载均衡
    • 设置主库是否接受读,格式为{\"MasterAcceptReads\":\"主库是否接受读\"}。取值范围如下:

      • on:表示主库接受读(默认)
      • off:表示主库不接受读
    • 设置事务拆分,格式为{\"DistributedTransaction\":\"事务拆分\"}。取值范围如下:

      • on:开启事务拆分(默认)
      • off:关闭事务拆分
    • 设置一致性级别,格式为{\"ConsistLevel\":\"一致性级别\"}。取值范围如下:

      • 0:最终一致性(弱)
      • 1:会话一致性(中)(默认)
      • 2:全局一致性(强)
    • 设置全局一致性读超时时间,格式为{\"ConsistTimeout\":\"全局一致性读超时时间\"}。取值范围:0~60000。默认值为 20。单位为 ms。

    • 设置会话一致性读超时时间,格式为{\"ConsistSessionTimeout\":\"会话一致性读超时时间\"}。取值范围:0~60000。默认值为 0。单位为 ms。

    • 设置全局(或会话)一致性读超时策略,格式为{\"ConsistTimeoutAction\":\"全局一致性读超时策略\"}。取值范围如下:

      • 0:将读请求发往主节点(默认)。
      • 1:代理返回一个错误报文 wait replication complete timeout, please retry 给应用端。
    • 设置连接池,格式为{\"ConnectionPersist\":\"连接池\"}。取值范围如下:

      • off:关闭连接池(默认)
      • Session:开启会话级连接池
      • Transaction:开启事务级连接池
    • 设置并行查询,格式为{\"MaxParallelDegree\":\"并行查询\"}。取值范围如下:

      • on:开启并行查询
      • off:关闭并行查询(默认)
    • 设置行存/列存自动引流,格式为{\"EnableHtapImci\":\"行存/列存自动引流\"}。取值范围如下:

      • on:开启行存/列存自动引流功能
      • off:关闭行存/列存自动引流功能(默认)
    • 设置是否开启过载保护,格式为{\"EnableOverloadThrottle\":\"是否开启过载保护\"}。取值范围如下:

      • on:开启过载保护
      • off:关闭过载保护(默认)
    说明
  • 仅当 PolarDB MySQL 版集群地址的读写模式为**可读可写(自动读写分离)**时,支持设置事务拆分、主库是否接受读、连接池和是否开启过载保护。
  • 当 PolarDB MySQL 版集群地址的读写模式为只读时,支持基于连接数负载均衡基于活跃请求数负载均衡两种负载均衡策略; 可读可写(自动读写分离)模式的集群地址仅支持基于活跃请求数负载均衡策略。
  • 当 PolarDB MySQL 版集群地址的读写模式为可读可写(自动读写分离),或集群地址的读写模式为只读且负载均衡策略为基于活跃请求数负载均衡时,支持设置行存/列存自动引流。
  • 仅 PolarDB MySQL 版支持一致性级别设置为全局一致性。
  • 如果参数 ReadWriteMode 取值为 ReadOnly,一致性级别取值只能为 0
  • 您可以同时设置一致性级别、事务拆分、主库是否接受读和连接池,例如{\"ConsistLevel\":\"1\",\"DistributedTransaction\":\"on\",\"ConnectionPersist\":\"Session\",\"MasterAcceptReads\":\"on\"}
  • 事务拆分的设置受一致性级别设置的约束。例如一致性级别取值为 0 时,不支持开启事务拆分;一致性级别取值为 12 时,支持开启事务拆分。
  • {"ConsistLevel":"1","DistributedTransaction":"on","MasterAcceptReads":"off","ConnectionPersist": "on"}
    DBEndpointDescriptionstring

    地址名称。

    test
    SccModestring

    节点是否开启全局一致性(高性能模式)功能。取值范围如下:

    • ON:开启

    • OFF:关闭

    枚举值:
    • on
    • off
    on
    PolarSccWaitTimeoutstring

    全局一致性超时时间

    100
    PolarSccTimeoutActionstring

    全局一致性超时策略。取值范围如下:

    • 0:发送该请求到主节点

    • 2:超时降级,当全局一致性读超时后,本次查询操作会自动降级为非一致性读取,且客户端不会收到报错信息

    0

    返回参数

    名称类型描述示例值
    object
    RequestIdstring

    请求 ID。

    CD3FA5F3-FAF3-44CA-AFFF-BAF869******

    示例

    正常返回示例

    JSON格式

    {
      "RequestId": "CD3FA5F3-FAF3-44CA-AFFF-BAF869******"
    }

    错误码

    HTTP status code错误码错误信息描述
    400InvalidEndpointConfig.MalformedThe specified parameter EndpointConfig is not valid.指定的参数EndpointConfig无效
    400InvalidDBEndpointId.MalformedThe specified parameter DBEndpointId is not valid.指定的参数DBEndpointId无效
    400InvalidNodes.MalformedThe specified parameter Nodes is not valid.指定的参数Nodes无效。
    404InvalidDBCluster.NotFoundThe DBClusterId provided does not exist in our records.当前的记录中不存在提供的DBClusterId。
    404EndpointStatus.NotSupportCurrent endpoint status does not support this operation.当前节点状态不支持此操作
    404InvalidDBClusterId.MalformedThe specified parameter DBClusterId is not valid.指定的参数DBClusterId无效
    404InvalidDBClusterId.NotFoundThe DBInstanceId provided does not exist in our records.当前的记录中不存在提供的DBClusterId。

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

    变更历史

    变更时间变更内容概要操作
    2024-07-30OpenAPI 错误码发生变更、OpenAPI 入参发生变更查看变更详情
    2023-09-12OpenAPI 错误码发生变更查看变更详情