¿Cómo creo otro usuario administrador para mi instancia de base de datos de Amazon RDS que ejecuta MySQL?

2 minutos de lectura
0

Quiero crear otro usuario con permisos de cuenta de administrador para mi instancia de base de datos Amazon Relational Database Service (Amazon RDS) que ejecuta MySQL.

Resolución

De forma predeterminada, una instancia de base de datos de RDS que ejecuta MySQL tiene una cuenta de administrador. Sin embargo, puede crear un nuevo usuario que tenga los mismos permisos que la cuenta de administrador. Para crear un usuario nuevo con estos permisos, siga estos pasos:

  1. Conéctese a su instancia de MySQL de RDS.

  2. Ejecute el comando SHOW GRANTS para obtener una lista de los permisos que están disponibles actualmente para la cuenta de administrador. A continuación, copie la lista de permisos para utilizarla más adelante:

    mysql> SHOW GRANTS for admin_username;

    Esto devuelve un resultado similar al siguiente mensaje:

    +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | 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 |
    +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

    Nota: En el mensaje anterior, la cuenta de administrador tiene el nombre de usuario admin.

  3. Para crear un usuario nuevo, ejecute el siguiente comando CREATE USER:

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

    Nota: Introduzca su nombre de usuario y contraseña en lugar de new_admin_user y password.

  4. Ejecute el comando GRANT para conceder la lista de permisos que obtuvo en el paso 2 al nuevo usuario:
    Nota: Los siguientes permisos se aplican a 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;

    Nota: Los permisos pueden cambiar en las diferentes versiones principales de MySQL

    El nuevo usuario ahora tiene los mismos permisos que la cuenta de administrador.

Información relacionada

Tareas de DBA comunes para instancias de base de datos de MySQL

¿Cómo puedo permitir que los usuarios se autentiquen en una instancia de base de datos de MySQL de Amazon RDS con sus credenciales de IAM?