本文介绍如何为RDS for MySQL实例创建账号和数据库。

账号类型

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

账号类型 说明
高权限账号
  • 只能通过控制台或API创建和管理。
  • 一个实例中只能创建一个高权限账号,可以管理所有普通账号和数据库。
  • 开放了更多权限,可满足个性化和精细化的权限管理需求,例如可按用户分配不同表的查询权限。
  • 可以断开任意账号的连接。
普通账号
  • 可以通过控制台、API或者SQL语句创建和管理。
  • 一个实例可以创建最多200个普通账号 。
  • 需要手动给普通账号授予特定数据库的权限。
  • 普通账号不能创建和管理其他账号,也不能断开其他账号的连接。
账号类型 建库数量 建表数量 用户数
高权限账号 不限 <20万 与实例内核参数相关
普通权限账号 500 <20万 与实例内核参数相关

高权限账号权限和Super权限区别

为了减少误操作对业务的影响,RDS for MySQL不提供Super权限,只能使用高权限账号管理所有普通账号和数据库,具体区别如下:

高权限账号

  • 具体权限请参见账号权限列表
  • 可以kill普通账号连接。
  • show processlist只能看到本账号的线程。

Super权限

  • 可以kill任何查询的连接。
  • show processlist可以看到所有的线程。
  • 可以使用修改全局变量的SET语句(可以随意改所有参数)。
  • 可以使用CHANGE MASTERPURGE MASTER LOGS命令。
  • 可以对主机内文件进行操作。

创建高权限账号

  1. 登录RDS控制台
  2. 在页面左上角,选择实例所在地域。
    选择地域
  3. 找到目标实例,单击实例ID。
  4. 在左侧导航栏中选择账号管理
  5. 单击创建账号
    创建截图
  6. 设置以下参数:
    参数 说明
    数据库账号

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

    • 长度为2~16个字符。
    • 以字母开头,以字母或数字结尾。
    • 由小写字母、数字或下划线组成。
    账号类型 此处选择高权限账号
    密码

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

    • 长度为8~32个字符。
    • 由大写字母、小写字母、数字、特殊字符中的任意三种组成。
    • 特殊字符为!@#$%^&*()_+-=
    确认密码 再次输入密码。
    备注说明 备注该账号的相关信息,便于后续账号管理。最多支持256个字符。
  7. 单击确定

重置账号权限

如果高权限账号自身出现问题,例如权限被意外回收(REVOKE ),您可以通过输入高权限账号的密码来重置高权限账号的权限,使其恢复正常。

  1. 登录RDS控制台
  2. 在页面左上角,选择实例所在地域。
    选择地域
  3. 找到目标实例,单击实例ID。
  4. 在左侧导航栏中单击账号管理
  5. 单击高权限账号右侧的重置账号权限
    回收权限
  6. 输入高权限账号密码,重置账号权限。

创建普通账号

  1. 登录RDS控制台
  2. 在页面左上角,选择实例所在地域。
    选择地域
  3. 找到目标实例,单击实例ID。
  4. 在左侧导航栏中单击账号管理
  5. 单击创建账号
    创建截图
  6. 设置以下参数:
    参数 说明
    数据库账号

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

    • 长度为2~16个字符。
    • 以字母开头,以字母或数字结尾。
    • 由小写字母、数字或下划线组成。
    账号类型 此处选择普通账号
    授权数据库 为该账号授予一个或多个数据库的权限。本参数可以留空,在创建账号后再给账号授权。
    1. 从左侧选中一个或多个数据库,单击授权添加到右侧。
    2. 在右侧框中,为某个数据库选择读写只读仅DDL只DML

      如果要为多个数据库批量设置相同的权限,则单击右侧框里右上角的按钮,如全部设读写

      说明 右上角的按钮会随着点击而变化。例如,单击全部设读写后,该按钮会变成全部设只读
    密码

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

    • 长度为8~32个字符。
    • 由大写字母、小写字母、数字、特殊字符中的任意三种组成。
    • 特殊字符为!@#$%^&*()_+-=
    确认密码 再次输入密码。
    备注说明 非必填。备注该账号的相关信息,便于后续账号管理。最多支持256个字符。
  7. 单击确定

创建数据库

  1. 登录RDS控制台
  2. 在页面左上角,选择实例所在地域。
    选择地域
  3. 找到目标实例,单击实例ID。
  4. 在左侧导航栏中单击数据库管理
  5. 单击创建数据库
    创建数据库
  6. 设置以下参数。
    参数 说明
    数据库(DB)名称
    • 长度为2~64个字符。
    • 以字母开头,以字母或数字结尾;
    • 由小写字母、数字、下划线或中划线组成;
    • 数据库名称在实例内必须是唯一的。
    支持字符集 选择utf8、gbk、latin1或utf8mb4。

    如果需要其他字符集,请选择全部,然后从列表中选择需要的字符集。

    授权账号 选中需要访问本数据库的账号。本参数可以留空,在创建数据库后再绑定账号。
    说明 此处只会显示普通账号,因为高权限账号拥有所有数据库的所有权限,不需要授权。
    账号类型 选择要授予账号的权限:读写只读仅DDL只DML
    备注说明 非必填。用于备注该数据库的相关信息,便于后续数据库管理,最多支持256个字符。
  7. 单击确定

账号权限列表

账号类型 授权类型 权限
高权限账号 - SELECT INSERT UPDATE DELETE CREATE
DROP RELOAD PROCESS REFERENCES INDEX
ALTER CREATE TEMPORARY TABLES LOCK TABLES EXECUTE REPLICATION SLAVE
REPLICATION CLIENT CREATE VIEW SHOW VIEW CREATE ROUTINE ALTER ROUTINE
CREATE USER EVENT TRIGGER
普通账号 只读 SELECT LOCK TABLES SHOW VIEW PROCESS REPLICATION SLAVE
REPLICATION CLIENT
读写 SELECT INSERT UPDATE DELETE CREATE
DROP REFERENCES INDEX ALTER CREATE TEMPORARY TABLES
LOCK TABLES EXECUTE CREATE VIEW SHOW VIEW CREATE ROUTINE
ALTER ROUTINE EVENT TRIGGER PROCESS REPLICATION SLAVE
REPLICATION CLIENT
仅DDL CREATE DROP INDEX ALTER CREATE TEMPORARY TABLES
LOCK TABLES CREATE VIEW SHOW VIEW CREATE ROUTINE ALTER ROUTINE
PROCESS REPLICATION SLAVE REPLICATION CLIENT
只DML SELECT INSERT UPDATE DELETE CREATE TEMPORARY TABLES
LOCK TABLES EXECUTE SHOW VIEW EVENT TRIGGER
PROCESS REPLICATION SLAVE REPLICATION CLIENT

常见问题

创建的账号在只读实例上可以用吗?

答:主实例创建的账号会同步到只读实例,只读实例无法管理账号。账号在只读实例上只能进行读操作,不能进行写操作。

相关API

API 描述
CreateAccount 创建账号
CreateDatabase 创建数据库

操作视频

账号及数据库管理