Updated on 2024-06-07 GMT+08:00

Enabling Database Proxy

Function

This API is used to enable database proxy for a DB instance.

  • Before calling an API, you need to understand the API in Authentication.

URI

  • URI format

    POST /v3/{project_id}/instances/{instance_id}/proxy/open

  • Parameter description
    Table 1 Parameters

    Parameter

    Mandatory

    Description

    project_id

    Yes

    Project ID of a tenant in a region.

    To obtain it, refer to Obtaining a Project ID.

    instance_id

    Yes

    Instance ID.

Request

Table 2 Parameters

Parameter

Mandatory

Type

Description

flavor_ref

Yes

String

Specification code of the database proxy.

  • When the site supports the database proxy in primary/standby mode, this parameter does not take effect.
  • When the site supports the database proxy in cluster mode, set this parameter to the value of code in the response body in Querying Database Proxy Specifications.

node_num

Yes

Integer

Number of database proxy nodes.

  • When the site supports the database proxy in primary/standby mode, set this parameter to 2.
  • When the site supports the database proxy in cluster mode, the minimum value of this parameter is 2. For the maximum value, see the value of max_proxy_node_num in the response body in Querying Database Proxies.

proxy_name

No

String

Name of the database proxy. Database proxies of the same type can have the same name under the same tenant.

The name must start with a letter and consist of 4 to 64 characters. Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed.

If this parameter is not specified or the site supports only the database proxy in primary/standby mode, a random name will be generated.

proxy_mode

No

String

Read/write mode of the database proxy. Valid values:

  • readwrite (default value): readable and writable
  • readonly: read-only

route_mode

No

Integer

Routing policy of the database proxy. Valid values:

  • 0: weighted
  • 1: load balancing (The primary node does not process read requests.)
  • 2: load balancing (The primary node processes read requests.)

To use load balancing, contact customer service to apply for required permissions.

nodes_read_weight

Yes

Array of objects

Read weights of database nodes. For details, see Table 3.

  • If proxy_mode is set to readonly, you need to configure a weight for at least one read replica.
  • If route_mode is set to a value greater than 0, the weight configured for the primary instance does not take effect.
  • This parameter can be left blank.

subnet_id

No

String

Subnet ID in the VPC hosting the DB instance. The value can be any subnet ID in the VPC to which the instance belongs.

  • To use this parameter, contact customer service.
  • On the subnet details page of the VPC console, obtain the network ID of the subnet.
Table 3 nodes_read_weight field data structure description

Parameter

Mandatory

Type

Description

instance_id

Yes

String

Instance ID.

weight

Yes

Integer

Read weight assigned.

Example Request

Enable database proxy for a DB instance.

POST https://rds.ap-southeast-1.myhuaweicloud.com/v3/23a50154cf494ec9ad6883979a12db0a/instances/920ec36cef814a8b830a5bed50d9a088in01/proxy/open

{
    "flavor_ref": "rds.proxy.xlarge.2",
    "node_num": 2,
    "proxy_name": "proxy-test",
	"nodes_read_weight": [
        {
            "instance_id": "917c67424dd54af3addf537a069e5b20in01",
            "weight": 1
        }
    ]
}

Response

  • Normal response
    Table 4 Parameters

    Parameter

    Type

    Description

    job_id

    String

    Task ID.

  • Example normal response
    { 
       "job_id" : "09908118-8e32-4742-982a-7be194f59e1d" 
     }
  • Abnormal response

    For details, see Abnormal Request Results.

Status Code

Error Code

For details, see Error Codes.