Como criar outro usuário administrador para minha instância de banco de dados do Amazon RDS que executa o MySQL?

2 minuto de leitura
0

Quero criar outro usuário com permissões de conta de administrador para minha instância de banco de dados do Amazon Relational Database Service (Amazon RDS) para MySQL.

Resolução

Por padrão, uma instância de banco de dados do RDS que executa o MySQL possui uma conta de administrador. No entanto, você pode criar um novo usuário com as mesmas permissões da conta de administrador. Para criar um novo usuário com essas permissões, conclua as seguintes etapas:

1.    Conecte-se à sua instância MySQL do RDS.

2.    Execute o comando SHOW GRANTS para obter uma lista das permissões atualmente disponíveis para a conta de administrador. Em seguida, copie essa lista de permissões para uso posterior:

mysql> SHOW GRANTS for admin_username;

Isso retorna uma saída semelhante à seguinte mensagem:

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

Observação: Nesse caso, a conta de administrador tem o nome de usuário admin.

3.    Crie um novo usuário com o comando CREATE USER:

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

Observação: Substitua new_admin_user e a senha pelo seu nome de usuário e senha.

4.    Execute o comando GRANT para conceder a lista de permissões obtida na etapa 2 ao novo usuário:

Observação: As seguintes permissões se aplicam ao MySQL 5.7. As permissões podem mudar em diferentes versões principais do MySQL

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;

O novo usuário agora tem as mesmas permissões da conta de administrador.


Informações relacionadas

Tarefas comuns do DBA (administrador de banco de dados) para instâncias de banco de dados MySQL

Como faço para permitir que os usuários se autentiquem em uma instância de banco de dados MySQL do Amazon RDS usando suas credenciais do IAM?