有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

1. 接口描述

接口请求域名: postgres.tencentcloudapi.com 。

本接口(ModifyDBInstanceHAConfig)用于修改实例HA配置信息。其中HA配置信息包括:

  • 允许备节点切换为主节点的条件配置
  • 半同步实例使用同步复制或异步复制的条件配置

    默认接口请求频率限制:20次/秒。

    推荐使用 API Explorer
    点击调试
    API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

    2. 输入参数

    以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

    参数名称 必选 类型 描述
    Action String 公共参数,本接口取值:ModifyDBInstanceHAConfig。
    Version String 公共参数,本接口取值:2017-03-12。
    Region String 公共参数,详见产品支持的 地域列表
    DBInstanceId String 实例ID
    示例值:postgres-aser1j2o
    SyncMode String 主从同步方式:
  • Semi-sync:半同步
  • Async:异步

    示例值:Async
  • MaxStandbyLatency Integer 高可用备机最大延迟数据量。备节点延迟数据量小于等于该值,且备节点延迟时间小于等于MaxStandbyLag时,可以切换为主节点。
  • 单位:byte
  • 参数范围:[1073741824, 322122547200]
    示例值:1000000000
  • MaxStandbyLag Integer 高可用备机最大延迟时间。备节点延迟时间小于等于该值,且备节点延迟数据量小于等于MaxStandbyLatency时,可以切换为主节点。
  • 单位:s
  • 参数范围:[5, 10]
    示例值:10
  • MaxSyncStandbyLatency Integer 同步备机最大延迟数据量。备机延迟数据量小于等于该值,且该备机延迟时间小于等于MaxSyncStandbyLag时,则该备机采用同步复制;否则,采用异步复制。
    该参数值针对SyncMode设置为Semi-sync的实例有效。
    半同步实例禁止退化为异步复制时,不设置MaxSyncStandbyLatency、MaxSyncStandbyLag。
    半同步实例允许退化异步复制时,PostgreSQL 9版本的实例须设置MaxSyncStandbyLatency且不设置MaxSyncStandbyLag,PostgreSQL 10及以上版本的实例须设置MaxSyncStandbyLatency、MaxSyncStandbyLag。
    示例值:1000000
    MaxSyncStandbyLag Integer 同步备机最大延迟时间。备机延迟时间小于等于该值,且该备机延迟数据量小于等于MaxSyncStandbyLatency时,则该备机采用同步复制;否则,采用异步复制。
    该参数值针对SyncMode设置为Semi-sync的实例有效。
    半同步实例禁止退化为异步复制时,不设置MaxSyncStandbyLatency、MaxSyncStandbyLag。
    半同步实例允许退化异步复制时,PostgreSQL 9版本的实例须设置MaxSyncStandbyLatency且不设置MaxSyncStandbyLag,PostgreSQL 10及以上版本的实例须设置MaxSyncStandbyLatency、MaxSyncStandbyLag,
    示例值:5

    3. 输出参数

    参数名称 类型 描述
    RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

    4. 示例

    示例1 修改为异步

    主从同步方式采用异步,设置允许切换的最大延迟

    输入示例

    POST / HTTP/1.1
    Host: postgres.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: ModifyDBInstanceHAConfig
    <公共请求参数>
    
    {
        "DBInstanceId": "postgres-32d4mmv9",
        "SyncMode": "Async",
        "MaxStandbyLatency": 10737418240,
        "MaxStandbyLag": 10
    }

    输出示例

    {
        "Response": {
            "RequestId": "c4676122-1694-4d0f-8b03-a33b4e1bd850"
        }
    }

    示例2 修改为半同步,允许退化为异步复制

    主从同步方式采用半同步,设置允许切换的最大延迟,允许退化为异步复制

    输入示例

    POST / HTTP/1.1
    Host: postgres.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: ModifyDBInstanceHAConfig
    <公共请求参数>
    
    {
        "DBInstanceId": "postgres-32d4mmv9",
        "SyncMode": "Semi-sync",
        "MaxStandbyLatency": 10737418240,
        "MaxStandbyLag": 10,
        "MaxSyncStandbyLatency": 1073741824,
        "MaxSyncStandbyLag": 5
    }

    输出示例

    {
        "Response": {
            "RequestId": "34c1d54c-ea3e-4594-8a5d-1b739123949d"
        }
    }

    示例3 修改为半同步,禁止退化为异步复制

    主从同步方式采用半同步,设置允许切换的最大延迟,禁止退化为异步复制

    输入示例

    POST / HTTP/1.1
    Host: postgres.tencentcloudapi.com
    Content-Type: application/json
    X-TC-Action: ModifyDBInstanceHAConfig
    <公共请求参数>
    
    {
        "DBInstanceId": "postgres-32d4mmv9",
        "SyncMode": "Semi-sync",
        "MaxStandbyLatency": 10737418240,
        "MaxStandbyLag": 10
    }

    输出示例

    {
        "Response": {
            "RequestId": "9b923bd9-6a3b-482a-945d-ea2e6f2a9f17"
        }
    }

    5. 开发者资源

    腾讯云 API 平台

    腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

    API Inspector

    用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

    SDK

    云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

    命令行工具

    6. 错误码

    以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

    错误码 描述
    FailedOperation.DatabaseAccessError 管控元数据库访问失败,请稍后重试。如果持续不成功,请联系客服进行处理。
    FailedOperation.FailedOperationError 操作失败,请稍后重试。
    InvalidParameter.ParameterCheckError 参数检查失败。
    InvalidParameter.ParametersNotSet 参数不可全部不设置
    InvalidParameterValue.InvalidParameterValueError 参数值有误。
    InvalidParameterValue.ParameterOutOfRange 参数超出可设置范围
    OperationDenied.CamDeniedError 当前操作被限制。
    OperationDenied.InstanceStatusLimitError 实例当前状态限制本次操作。
    ResourceNotFound.InstanceNotFoundError 实例不存在。