You need to enable JavaScript to run this app.
导航
ModifyDBEndpoint
最近更新时间:2024.12.12 10:25:45首次发布时间:2023.06.09 11:33:53

调用 ModifyDBEndpoint 接口修改指定实例的连接终端。

请求类型

同步请求。

调试

注意事项

  • 主节点终端仅支持修改 EndpointNameDescription 参数。若为其他参数传入了值,这些值会被忽略,但不会报错。

  • 默认终端不支持修改 ReadWriteModeAutoAddNewNodesNodes 参数。若为这些参数传入了值,这些值会被忽略,但不会报错。

请求参数

名称类型是否必选示例值描述
InstanceIdStringvedbm-2pf2xk5v****实例 ID。

EndpointId

String

vedbm-2pf2xk5v****-Custom-50yv

连接终端 ID。

说明

您可以调用 DescribeDBEndpoint 接口,获取连接终端的详细信息,包括连接终端 ID。

ReadWriteMode

String

ReadOnly

终端读写模式。取值:

  • ReadWrite:读写终端。
  • ReadOnly:只读终端。

注意

如果修改了读写模式,则需要在 Nodes 参数中提供节点列表。

EndpointName

String

自定义只读终端

实例连接终端名称。终端名称的设置规则如下:

  • 不能以数字或中划线(-)开头。
  • 只能包含中文、字母、数字、下划线(_)和中划线(-)。
  • 长度为 1~64 个字符。
DescriptionString描述终端的描述信息。长度不能超过 200 个字符。

Nodes

String

vedbm-2pf2xk5v****-0,vedbm-2pf2xk5v****-1

连接终端所关联节点的节点 ID。多个节点 ID 之间使用英文逗号(,)分隔,填写规则如下:

  • ReadWriteModeReadOnly 修改为 ReadWrite 时,必须传入主节点,可按需选择是否传入只读节点。

    说明

    建议关联主节点和至少一个只读节点。仅关联主节点时,不支持读写分离。

  • ReadWriteModeReadWrite 修改为 ReadOnly 时,可以传入一个节点或多个只读节点,不可传入主节点。

说明

  • 当修改了终端的读写模式,即更改了 ReadWriteMode 的取值时必填。
  • 您可以调用 DescribeDBInstanceDetail 接口,查询指定实例的详细信息,包括节点 ID。

AutoAddNewNodes

Boolean

true

当终端类型为自定义终端,即 EndpointType 取值为 Custom 时,支持设置新创建的只读节点是否自动加入该连接终端。取值:

  • true:自动加入。
  • false:不自动加入(默认)。

说明

可通过 EndpointId 快速判断是否为自定义终端。如 EndpointId 中含有 Custom 字段,则说明该终端类型为自定义终端。

MasterAcceptReadRequests

Boolean

true

主节点接受读请求。取值范围:

  • true:(默认)当开启主节点接受读功能后,非事务读请求会按活跃请求数负载均衡的模式发送至主节点或只读节点。
  • false:当关闭主节点接受读功能后,此时主节点只接受事务读请求,而非事务读请求不会发往主节点。

说明

  • 仅对默认终端和自定义读写终端有效。
  • 修改主节点接受读功能对所有连接立即生效。

DistributedTransaction

Boolean

true

设置是否开启事务拆分,关于事务拆分的详细介绍请参见事务拆分。取值范围:

  • true:开启(默认)。
  • false:不开启。

说明

  • 仅当 ReadWriteMode 取值为ReadWrite 时,支持开启事务拆分。
  • 修改事务拆分状态仅对新连接生效,已有的连接保持原来的配置。

ConsistLevel

String

Session

一致性级别,关于一致性级别的详细介绍请参见一致性级别 。取值范围:

  • Eventual:最终一致性。
  • Session:会话一致性。
  • Global:全局一致性。

说明

  • ReadWriteMode 取值为 ReadWrite 时,可选择的一致性级别有 EventualSession(默认)、Global
  • ReadWriteModeReadOnly 时,一致性级别默认为 Eventual,且不可更改。
  • 一致性级别从最终一致性的调整到会话一致性或全局一致性,仅对新连接生效。从会话一致性或全局一致性调整到最终一致性,存量连接立即生效。

ConsistTimeout

Integer

10000

延迟很大时,只读节点同步最新数据的超时时间,单位为 us,取值范围为 1us~100000000us,默认值为 10000us。

说明

ConsistLevel 取值为 GlobalSession 时,该参数才生效。

ConsistTimeoutAction

String

ReadMaster

只读节点同步数据超时后的超时策略,支持以下两种策略:

  • ReturnError:返回 SQL 报错(wait replication complete timeout, please retry)。
  • ReadMaster:发送请求到主节点(默认)。

说明

ConsistLevel 取值为 GlobalSession 时,该参数才生效。

返回参数

null

请求示例

  • CreateDBEndpoint 接口请求示例中的只读终端修改为读写终端。调整 ReadWriteModeReadWrite ,在 Nodes 参数中增加主节点 ID,调整一致性级别为会话一致性,并开启主节点接受读和事务拆分。

    POST /?Action=ModifyDBEndpoint&Version=2022-01-01 HTTP/1.1
    Content-Type: application/json
    Host: vedbm.volcengineapi.com
    X-Date: 20230823T101010Z
    Authorization: HMAC-SHA256 Credential=AKLTN2I0MmFiNzMxNWE5NDgzMzk4MmVjMTVkOD******/20230823/cn-beijing/vedbm/request,SignedHeaders=x-date, Signature=6a593bf5f59e7c1109fb205c739d1cff4c672fe2d251963f4d48c87******
    
    {
        "InstanceId":"vedbm-cxj2z00l****",
        "EndpointId":"vedbm-cxj2z00l****-Custom-wmes",
        "EndpointName":"只读终端修改为读写终端",
        "Nodes":"vvedbm-cxj2z00l****-0,vedbm-cxj2z00l****-1,vedbm-cxj2z00l****-2",
        "AutoAddNewNodes":true,
        "ReadWriteMode":"ReadWrite",
        "MasterAcceptReadRequests":true,
        "DistributedTransaction":true,
        "ConsistLevel":"Global",
        "ConsistTimeout":20000,
        "ConsistTimeoutAction":"ReadMaster"
    }
    
  • 将上述示例修改后的读写终端,再修改为只读终端。将 ReadWriteMode 调整为 ReadOnly ,并删除 Nodes 参数中的主节点 ID。

{
    "InstanceId":"vedbm-cxj2z00l****",
    "EndpointId":"vedbm-cxj2z00l****-Custom-wmes",
    "EndpointName":"自定义终端",
    "Nodes":"vedbm-cxj2z00l****-1,vedbm-cxj2z00l****-2",
    "ReadWriteMode":"ReadOnly",
    "AutoAddNewNodes":true
}

返回示例

正常返回示例

POST /?Action=ModifyDBEndpoint&Version=2022-01-01 HTTP/1.1
	Content-Type: application/json
	Host: vedbm.volcengineapi.com
	X-Date: 20230823T101010Z
	Authorization: HMAC-SHA256 Credential=AKLTN2I0MmFiNzMxNWE5NDgzMzk4MmVjMTVkOD******/20230823/cn-beijing/vedbm/request,SignedHeaders=x-date, Signature=6a593bf5f59e7c1109fb205c739d1cff4c672fe2d251963f4d48c87******
	
	{
	    "ResponseMetadata": {
	        "RequestId": "2023082311123288FB7868EDA41036FCD7",
	        "Action": "ModifyDBEndpoint",
	        "Version": "2022-01-01",
	        "Service": "vedbm",
	        "Region": "cn-beijing"
	    },
	    "Result": null
	}

错误码

更多详情,请参见错误码