更新时间: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_user

  • 参数说明
    表1 参数说明

    名称

    是否必选

    说明

    project_id

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

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

    instance_id

    实例ID。

请求消息

表2 参数说明

名称

是否必选

参数类型

说明

name

String

数据库账号名称。

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

password

String

数据库账号密码。

取值范围:

非空,长度8~32个字符,至少包含大写字母、小写字母、数字、特殊字符~!@#$%^*-_=+?,()&三种字符的组合,不能和账号名或账号名的逆序相同。

建议您输入高强度密码,以提高安全性,防止出现密码被暴力破解等安全风险。

comment

String

数据库账号备注。

取值范围:长度1~512个字符。目前仅支持MySQL 8.0.25及以上版本。

hosts

Array of strings

授权用户登录数据库的IP列表。
  • 若IP地址为%,表示允许所有地址访问MySQL实例。
  • 若IP地址为“10.10.10.%”,表示10.10.10.X的IP地址都可以访问MySQL实例。
  • 支持添加多个IP地址。

databases

Array of objects

授权用户登录的数据库,详情请参见表3

表3 databases元素结构说明

名称

是否必选

参数类型

说明

name

String

授权已有数据库名称。

readonly

Boolean

是否为只读权限。

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

请求示例

创建数据库用户rds。

POST https://{endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/db_user
{
    "name": "rds",
    "password": "************",
    "comment": "mysql",
    "hosts": [
        "%"  
    ],
    "databases" : [
       {
           "name" : "***",
            "readonly" : false
       }
    ]
}

响应消息

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

    名称

    参数类型

    说明

    resp

    String

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

状态码

错误码

请参见错误码