更新时间:2024-03-28 GMT+08:00

授权数据库账号

功能介绍

在指定实例的数据库中, 设置账号的权限。

接口约束

  • 实例在创建、变更规格、修改端口、异常或冻结状态下不能执行该操作。
  • 除RDS界面和API以外的其他方式创建的数据库和账号,如果创建的数据库名和账号名不满足数据库命名规则(参见表2)和账号命名规则(参见表2),例如包含中文或不支持的特殊字符,那么该数据库和账号不支持RDS界面或API的数据库管理和账号管理功能。
  • 如果源库的数据库名和账号名不满足数据库命名规则(参见表2)和账号命名规则(参见表2),迁移到目标库RDS for MySQL后,该数据库和账号也不支持RDS界面或API的数据库管理和账号管理功能。

URI

  • URI格式

    POST /v3/{project_id}/instances/{instance_id}/db_privilege

  • 参数说明
    表1 参数说明

    名称

    是否必选

    说明

    project_id

    租户在某一Region下的项目ID。

    获取方法请参见获取项目ID

    instance_id

    实例ID。

请求消息

表2 参数说明

名称

是否必选

参数类型

说明

db_name

String

数据库名称。

users

Array of objects

每个元素都是与数据库相关联的账号。单次请求最多支持50个元素。

每个元素结构请参见表3

表3 users列表元素数据结构说明

名称

是否必选

参数类型

说明

name

String

数据库账号名称。

数据库账号名称在1到32个字符之间,由字母、数字、中划线或下划线组成,不能包含其他特殊字符。
  • 若数据库版本为MySQL5.6,账号长度为1~16个字符。
  • 若数据库版本为MySQL5.7和8.0,账号长度为1~32个字符。

readonly

Boolean

是否为只读权限:

  • “true”表示只读。
  • “false”表示可读写。

请求示例

授权rds账号可读可写、rds001账号只读。
POST https://{endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/db_privilege
{
    "db_name": "rds-test",
    "users": [
        {
            "name": "rds",
            "readonly": false
        },
        {
            "name": "rds001",
            "readonly": true
        }
    ]
}

响应消息

  • 正常响应要素说明
    表4 要素说明

    名称

    参数类型

    说明

    resp

    String

    调用正常时,返回“successful”。

状态码

错误码

请参见错误码