全部产品
Search
文档中心

云原生数据库 PolarDB:ModifyDBClusterEndpoint - 修改PolarDB的集群地址属性

更新时间:Mar 01, 2024

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

调试

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

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
polardb:ModifyDBClusterEndpointWrite
  • dbcluster
    acs:polardb:{#regionId}:{#accountId}:dbcluster/{#dbclusterId}

请求参数

名称类型必填描述示例值
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。

    • 设置全局一致性读超时策略,格式为{\"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

    返回参数

    名称类型描述示例值
    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。

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

    变更历史

    变更时间变更内容概要操作
    2023-09-12OpenAPI 错误码发生变更看变更集
    变更项变更内容
    错误码OpenAPI 错误码发生变更
      错误码 400 变更
      错误码 404 变更