创建账号

2026-09-10   访问量:0


前提条件

已创建RDS MySQL实例Serverless实例

说明

如果需要为阿里云账号创建子账号并授权子账号管理某些实例,请参见创建RAM用户创建RAM用户

账号类型

RDS MySQL或RDS MySQL Serverless实例支持两种数据库账号:高权限账号和普通账号。您可以在控制台管理所有账号和数据库,账号拥有的具体权限请参见账号权限列表

说明

账号创建后,账号类型无法切换,您可以删除账号后重新创建同名账号。

账号类型

说明

高权限账号


  • 只能通过控制台或API创建和管理。

  • 一个实例中只能创建一个高权限账号,可以管理所有普通账号和数据库。

  • 开放了更多权限,可满足个性化和精细化的权限管理需求,例如可按用户分配不同表的查询权限。

  • 拥有实例下所有数据库的权限。

  • 可以断开任意账号的连接。

普通账号

  • 可以通过控制台、API或者SQL语句创建和管理。

  • 一个实例可以创建多个普通账号。

  • 普通账号默认仅拥有登录数据库的权限,您需要手动给普通账号授予其他特定的权限。更多信息,请参见修改账号权限

  • 普通账号不能创建和管理其他账号,也不能断开其他账号的连接。

  • 通过 SQL 命令(如 CREATE USER)创建的普通账号会显示在 RDS 控制台的账号管理列表中,您可以在控制台查看该账号信息。该账号的权限可通过 SQL 命令(GRANT/REVOKE)或 API 管理。更多信息,请参见常用 SQL 命令。

账号类型

建库数量

建表数量

高权限账号

不限

<20万

普通权限账号

500

<20万

说明

针对建库数量,底层文件系统可能对目录数量有限制。

创建高权限账号

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 在左侧导航栏单击账号管理

  3. 单击创建账号

  4. 设置以下参数。

    参数

    说明

    数据库账号

    填写账号名称。要求如下:

    账号类型

    此处选择高权限账号

    新密码

    设置账号密码。要求如下:

    说明

    确认密码

    再次输入密码。

    备注

    备注该账号的相关信息,便于后续账号管理。最多支持256个字符。字符中不能包含http://https://

    • 长度为8~32个字符。

    • 由大写字母、小写字母、数字、特殊字符中的三种及以上类型组成。

    • 特殊字符为!@#$%^&*()_+-=

    • MySQL 5.6支持账号长度为2~16个字符,MySQL 8.4、8.0和5.7支持账号长度为2~32个字符。

    • 由字母、数字或下划线组成。

    • 以字母开头,以字母或数字结尾。

    • 不能和已有的账号名重复。

    • 普通账号名与高权限账号名不能互相类似,例如:高权限账号名Test1,普通账号名不能为test1等。

    • 不能包含保留关键字。

  5. 单击确定

重置账号权限

如果高权限账号自身出现问题,例如权限被意外回收(REVOKE ),您可以通过重置账号权限的方法恢复。

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 在左侧导航栏单击账号管理

  3. 单击高权限账号右侧的重置账号权限

  4. 输入高权限账号密码,单击确定重置账号权限。

创建普通账号

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 在左侧导航栏单击账号管理

  3. 单击创建账号

  4. 设置以下参数。

    参数

    说明

    数据库账号

    填写账号名称。要求如下:

    账号类型

    此处选择普通账号

    授权数据库:

    为该账号授予一个或多个数据库的权限。本参数可以留空,在创建账号后再给账号授权。

    新密码

    设置账号密码。要求如下:

    说明

    确认密码

    再次输入密码。

    备注

    备注该账号的相关信息,便于后续账号管理。最多支持256个字符。字符中不能包含http://https://

    • 长度为8~32个字符。

    • 由大写字母、小写字母、数字、特殊字符中的三种及以上类型组成。

    • 特殊字符为!@#$%^&*()_+-=

    • MySQL 5.6支持账号长度为2~16个字符,MySQL 8.4、8.0和5.7支持账号长度为2~32个字符。

    • 由字母、数字或下划线组成。

    • 以字母开头,以字母或数字结尾。

    • 不能和已有的账号名重复。

    • 普通账号名与高权限账号名不能互相类似,例如:高权限账号名Test1,普通账号名不能为test1等。

    • 不能包含保留关键字。

    1. 从左侧选中一个或多个数据库,单击>添加到右侧。

    2. 在右侧框中,为某个数据库选择读写(DDL+DML)只读仅DDL仅DML

      如果要为多个数据库批量设置相同的权限,则单击右侧框右上角全部设后的对应权限。

      说明

      不同权限的详细说明请参见账号权限列表

  5. 单击确定

相关API

通过CreateAccount创建数据库账号。

常见问题

账号能否设置为只能从内网访问?

暂不支持在控制台设置,您可以通过SQL命令限制登录的源地址,详情请参见指定账号从特定IP地址访问数据库

账号能否设置更细粒度,例如只能访问某个表?

暂不支持在控制台设置,您可以通过SQL命令设置,详情请参见限制账号只能访问指定表、视图、字段

如何创建root账号?

RDS无法创建root账号,只能创建高权限账号(云数据库RDS内最高权限的账号)和普通账号

通过CreateAccount接口创建用户时报错AccountLimitExceeded

问题描述

用户通过CreateAccount接口创建数据库账号时,如果参数设置不正确,可能出现如下报错

"Code": "AccountLimitExceeded", "Message": "AccountQuotaExceeded: Exceeding the allowed amount of account"

此错误表明当前实例中已达到允许的最大账号数量限制。

报错原因

  • 账号数量限制:仅允许一个高权限账号。

  • 参数设置问题:在MySQL中,若AccountType设置为Super(高权限账号),但数据库中已有高权限账号,则会触发AccountLimitExceeded报错。

解决方案

  • 创建普通账号:确保AccountType设置为Normal,RDS对普通账号数量无限制。

  • 创建高权限账号:确保AccountType设置为Super,可通过RDS控制台账号管理页面检查实例中是否已存在高权限账号,若已存在,请避免重复创建

账号密码能否不使用特殊字符?

可以,数据库账号的密码由大写字母、小写字母、数字、特殊字符中的三种及以上类型组成即可。

为什么订阅实例日志时报错提示无 mysql.rds_extra 表权限?

账号备注信息存储在 mysql 库下的 rds_extra 表中。添加备注会写入 rds_extra 表,并生成该表的 binlog 日志。如果客户端订阅了实例的所有日志,且订阅账号没有 mysql.rds_extra 表的权限,将报错提示无该表权限。

如何设置数据库密码的有效期?

RDS MySQL中暂时不支持通过default_password_lifetime参数设置密码有效期。您需要使用高权限账号执行PASSWORD EXPIRE命令实现单个账号的密码过期策略(集群版不支持),例如:

CREATE USER 'testuser'@'%' IDENTIFIED BY 'StrongPass123!' PASSWORD EXPIRE INTERVAL 90 DAY;

高权限账号状态一直显示“创建中”怎么办?

创建高权限账号后,如果账号管理页面长时间显示“创建中”,请先刷新页面查看最新状态。如果刷新后仍显示“创建中”,请清理浏览器缓存后重新登录控制台的账号管理页面查看,通常状态会更新为“已激活”。

删除高权限账号后,多久才能重新创建?

删除高权限账号后立即创建新的高权限账号时,账号类型中的高权限账号选项可能暂时不可选,这不代表创建失败。请等待约 3 分钟,然后刷新账号管理页面,待高权限账号选项恢复可选后即可重新创建。一个实例只能存在一个高权限账号



热门文章
更多>