如何为运行 MySQL 的 Amazon RDS 数据库实例创建另一个管理员用户?

1 分钟阅读
0

我想创建另一个对我的 Amazon Relational Database Service(Amazon RDS)for MySQL 数据库实例拥有管理员账户权限的用户。

解决方法

默认情况下,运行 MySQL 的 RDS 数据库实例有一个管理员账户。但是,您可以创建一个拥有与管理员帐户相同的权限的新用户。要创建拥有这些权限的新用户,请完成下面的步骤:

  1. 连接到 RDS MySQL 实例

  2. 运行 SHOW GRANTS 命令来获取管理员帐户当前可使用的权限列表。然后,复制该权限列表以便稍后使用:

    mysql> SHOW GRANTS for admin_username;

    您将看到类似于下面消息的输出:

    +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | Grants for admin@% |
    +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'admin'@'%' WITH GRANT OPTION |
    +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

    **注意:**在前面的消息中,管理员账户的用户名为 admin

  3. 要创建新用户,请运行以下 CREATE USER 命令:

    mysql> CREATE USER 'new_admin_user'@'%' IDENTIFIED BY 'password';

    **注意:**输入用户名和密码来代替 new_admin_userpassword

  4. 要向新用户授予在步骤 2 中获得的权限列表,请运行 GRANT 命令:
    **注意:**下面的权限适用于 MySQL 5.7:

    mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'new_admin_user'@'%' WITH GRANT OPTION;

    **注意:**MySQL 的不同主要版本中的权限可能会发生变化

    现在,新用户所拥有的权限与管理员账户相同。

相关信息

MySQL 数据库实例的数据库管理员常见任务

如何允许用户使用其 Amazon IAM 凭证向 Amazon RDS for MySQL 数据库实例进行身份验证?