Skip to main content

Gerenciar usuários e permissões

Antes de começar a gerenciar usuários e permissões no MySQL, é importante garantir que você tenha acesso a um banco de dados MySQL e a uma Virtual Machine (VM), ambos provisionados na mesma região das disponíveis na Magalu Cloud. Devido ao fato de o banco de dados MySQL na Magalu Cloud possuir um endereço IPv4 privado, é necessário utilizar uma VM como um "jump host" para acessar o banco de dados. Utilizar a mesma região para o banco de dados e a VM minimiza a latência e maximiza a eficiência da comunicação entre os dois. Além disso, assegurar que ambos estão na mesma região ajuda a evitar custos adicionais de tráfego de rede entre regiões diferentes e melhora a performance geral do sistema.

1. Criar um novo usuário

Para criar um novo usuário no MySQL:

  • A partir de uma Virtual Machine (VM) criada na Magalu Cloud, conecte-se ao MySQL:

    sql

    mysql -h ip_privado_do_banco -u usuário -p senha
    • Substitua ip_privado_do_banco pelo IP privado do banco na mesma região da VM;
    • Substitua usuário e senha pelos dados de login do usuário administrativo do banco de dados MySQL.
  • Crie um novo usuário:

    sql

    CREATE USER 'newuser'@'host' IDENTIFIED BY 'password';
    • newuser: o nome de usuário do novo usuário.
    • host: o host a partir do qual o usuário pode se conectar (por exemplo, localhost ou % para qualquer host).
    • password: a senha do novo usuário.
  • Conceder permissões:

    sql

    GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@'host';
    FLUSH PRIVILEGES;
    • database_name: o banco de dados ao qual o usuário deve ter acesso.

2. Modificar permissões de usuário

Para modificar as permissões do usuário:

  • Conceda privilégios adicionais:

    sql

    GRANT SELECT, INSERT, UPDATE ON database_name.* TO 'username'@'host';
    FLUSH PRIVILEGES;
  • Revogar privilégios:

    sql

    REVOKE DELETE ON database_name.* FROM 'username'@'host';
    FLUSH PRIVILEGES;

3. Excluir um usuário

Para excluir um usuário:

sql

DROP USER 'username'@'host';