Como criar contas de usuários MySQL e conceder permissões de permissão

O MySQL é um ótimo aplicativo de gerenciamento de banco de dados de código aberto que permite armazenar, organizar e recuperar informações. Ele tem muitas opções para conceder aos usuários especificados permissões variadas nas tabelas e bancos de dados. Se é nisso que você está interessado, não precisa mais procurar. Este é o guia para você.
Table of Contents
Como criar um novo usuário
Veja como criar um novo usuário no shell do MySQL.
Primeiro, uma conta de usuário no MySQL possui duas partes: um nome de usuário e um nome de host. Para gerar uma nova conta de usuário MySQL, execute este comando:
"mysql> CRIAR USUÁRIO 'newuser' @ 'localhost' IDENTIFICADO POR 'user_password'"
Nota: Substitua "newuser" pelo novo nome de usuário e "user_password" pela senha do usuário.
Neste exemplo, a parte do nome do host é definida como localhost. Isso significa que o usuário só poderá se conectar ao servidor MySQL a partir do host local, ou seja, o sistema no qual o servidor MySQL é executado.
Como conceder permissões
No momento, o novo usuário não tem permissões e não pode fazer nada nos bancos de dados. Portanto, a primeira coisa que você desejará fazer é fornecer ao usuário acesso aos dados necessários. Há muitos privilégios que você pode atribuir ao novo usuário, mas os mais usados são:
- TODOS OS PRIVILÉGIOS - Concede todos os privilégios a uma conta de usuário.
- CREATE - Permite que a conta do usuário crie bancos de dados e tabelas.
- DROP - Permite que a conta do usuário descarte bancos de dados e tabelas.
- DELETE - Permite que a conta de usuário exclua linhas de uma tabela específica.
- INSERIR - Permite que a conta do usuário insira linhas em uma tabela específica.
- SELECT - Permite que a conta do usuário leia um banco de dados.
- UPDATE - Permite que a conta do usuário atualize as linhas da tabela.
Para conceder privilégios específicos a uma conta de usuário, use a seguinte sintaxe:
mysql> GRANT permission1, permission2 ON database_name.table_name TO 'database_user' @ 'localhost';
Por exemplo:
Grand todos os privilégios para uma conta de usuário em um banco de dados específico:
mysql> GRANT ALL PRIVILEGES ON database_name. * TO 'database_user' @ 'localhost';
Grand todos os privilégios para uma conta de usuário em todos os bancos de dados:
mysql> GRANT ALL PRIVILEGES ON *. * TO 'database_user' @ 'localhost';
Grand todos os privilégios para uma conta de usuário em uma tabela específica de um banco de dados:
mysql> GRANT ALL PRIVILEGES ON database_name.table_name TO 'database_user' @ 'localhost';
Conceda vários privilégios a uma conta de usuário em um banco de dados específico:
mysql> GRANT SELECT, INSERT, DELETE ON database_name. * TO database_user @ '
Sempre que você atualizar ou alterar uma permissão, lembre-se de usar o comando Flush Privileges.
Ao concluir as permissões que você deseja configurar para seus novos usuários, sempre recarregue todos os privilégios.
Como revogar uma permissão
Se você precisar revogar uma permissão, a estrutura é quase idêntica à concessão.
Para revogar todos os privilégios de uma conta de usuário em um banco de dados específico, execute este comando:
mysql> REVOKE ALL PRIVILEGES ON database_name. * FROM 'database_user' @ localhost '
Nota: Ao revogar permissões, a sintaxe exige que você use FROM, em vez de TO, como usamos ao conceder permissões.
Felizmente, você tem uma noção melhor de como adicionar novos usuários e conceder a eles uma variedade de permissões em um banco de dados MySQL depois de ler este guia.