agosto 14, 2020
4min Ler
Carlos E.
Você quer entender o básico sobre operações MySQL? Então continue lendo, pois este artigo vai mostrar como criar um usuário no MySQL. Você também vai aprender diversos comandos para conceder privilégios, revogar privilégios e deletar usuários existentes.
Obtenha até 77% de desconto em pacotes de hospedagem VPS.
Antes de continuarmos para a próxima seção do tutorial, garanta que você tem o MySQL instalado. Se você ainda não tem, temos ótimos tutoriais sobre como instalá-lo tanto no Ubuntu quanto no CentOS.
NOTA: Vamos usar a linha de comando para acessar a nossa VPS Linux como usuário root. Você pode usar PuTTY (Windows) ou o seu terminal (macOS, Linux) e logar usando a informação de login root SSH providenciada pelo seu provedor de hospedagem.
Conteúdo
Assim que você começa a usar o MySQL, você receberá um nome de usuário e uma senha. Essas credenciais iniciais lhe concedem “acesso root”. O usuário root tem acesso total a todos os bancos de dados e tabelas dentro desses bancos de dados.
Mas muitas vezes, você precisa dar o acesso do banco de dados para outra pessoa sem conceder-lhes o controle total. Por exemplo, as empresas contratam desenvolvedores para manter bancos de dados, mas não querem dar-lhes a capacidade de excluir ou modificar qualquer informação.
Muitas vezes, elas fornecem credenciais de um usuário não-root para evitar esse problema. Desta forma, a empresa pode manter o controle do que seus desenvolvedores podem e não podem fazer com os dados.
Nesta parte, vamos explicar como criar uma conta de usuário no MySQL e conceder todos os privilégios para o seu banco de dados. Num sentido prático, não é inteligente dar controle total para um usuário que não é do tipo root.
Contudo, ainda trata-se de um bom ponto de partida para aprender sobre privilégio de usuários. Para criar uma nova de usuário no MySQL, siga esses passos:
mysql
mysql>
CREATE USER 'novo_usuário'@'localhost' IDENTIFIED BY 'senha';
GRANT ALL PRIVILEGES ON * . * TO 'novo_usuario'@'localhost';
FLUSH PRIVILEGES;
Assim que isso estiver feito, a sua nova conta de usuário vai ter o mesmo acesso ao banco de dados do que a conta antiga.
Nesta parte, vamos explicar como conceder privilégios de maneira separada para uma conta de usuário no MySQL.
Na hora de especificar o nome do banco de dados e o nome da tabela, separe-os por um . (ponto final) e não use espaços. Isso vai dar ao usuário root um controle refinado sobre determinados dados.
Também substitua o valor PERMISSION_TYPE com o tipo de acesso que você quer conceder para a sua nova conta de usuário.
Aqui estão os comandos mais usados no MySQL:
NOTA: Usar o tipo de permissão ALL PRIVILEGES (TODOS OS PRIVILÉGIOS) que citamos antes vai conceder todas as permissões listadas acima.
Para usar qualquer uma dessas opções, basta substituir [tipo de permissão] com a palavra-chave apropriada. Para aplicar vários privilégios, separe-os com um comando como este. Por exemplo, podemos atribuir privilégios CREATE e SELECT para o usuário MySQL não-root com este comando:
GRANT CREATE, SELECT ON *. * Para 'nome_de_usuário' @ 'localhost';
Claro, você pode enfrentar uma situação onde você precisa revogar privilégios de um usuário. Você pode fazer isso usando o seguinte comando:
REVOKE [tipo de permissão] ON [nome do banco de dados].[Nome da tabela] FROM 'nome_de_usuário'@'localhost';
Por exemplo, para anular todos os privilégios para nosso usuário não-root, devemos usar:
REVOKE ALL PRIVILEGES ON nome_do_banco_de_dados.nome_da_tabela FROM 'nome_do_usuário'@'localhost';
Finalmente, você pode excluir completamente um usuário existente usando o seguinte comando:
DROP USER 'nome_do_usuário'@'localhost';
NOTA: Lembre-se, você precisa ter acesso root para rodar qualquer um desses comandos. Garanta que você vai executar o comando FLUSH PRIVILEGES; antes de executar suas mudanças.
Para descobrir quais privilégios já foram concedidos para um usuário MysQL, você pode usar o comando SHOW GRANTS:
SHOW GRANTS FOR 'nome_do_usuário'@'localhost';
O retorno dessa string será algo parecido com isso:
+---------------------------------------------------------------------------+ | Grants for user_name@localhost | +---------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'user_name'@'localhost' | | GRANT ALL PRIVILEGES ON 'database_name'.* TO 'user_name'@'localhost'. | | REVOKE ALL PRIVILEGES ON * . * FROM 'user_name'@'localhost'; | +---------------------------------------------------------------------------+ 3 rows in set (0.00 sec)
Para entender o que é MySQL, você precisa saber o que é um banco de dados. Basicamente trata-se de um armazenamento virtual onde você pode salvar dados necessários para construir sites e aplicações da web.
Uma base de dados MySQL pode armazenar dados de contas, como nomes de usuários, senhas, endereços de email e qualquer tipo de informação que você desejar guardar para usar no futuro.
Contudo, os dados precisam ser armazenadas numa determinada ordem. É por isso que temos sistemas de gestão de bancos de dados. Essas ferramentas são usadas para se comunicar com a base de dados e permitir que os desenvolvedores criem a estrutura, armazenem, façam o dump e modifiquem os dados.
O MySQL é um dos nomes mais populares quando falamos de sistemas de gestão de databases. Isso se deve à sua facilidade de uso e sua extensa comunidade de suporte. Até plataformas como Facebook e Twitter usam o MySQL até certo ponto.
Um banco de dados é uma parte essencial de todo site e aplicação web, já que ele armazena todos os dados de usuários. Para gerenciar e se comunicar com ele de maneira mais eficiente, você vai precisar de um sistema de gestão de banco de dados.
É por isso que nós recomendados usar a opção mais popular e indicada: o MySQL, que se destaca por sua confiabilidade e facilidade de uso.
Neste tutorial, você aprendeu sobre alguns comandos básicos para executar diversas tarefas no MySQL, incluindo:
Boa sorte, e sinta-se livre para deixar um comentário abaixo se você tiver qualquer dúvida!
Deixe uma resposta