MySQL

Como criar usuário MySQL e conceder privilégios

Se você está acostumado com desenvolvimento web ou desenvolvimento de aplicativos em geral, você já pode ter ouvido falar em bancos de dados. Bancos de dados são armazenamentos de dados virtuais, necessários para a construção de algumas aplicações web. Eles são usados ​​para armazenar detalhes do usuário, como nome de usuário, senha, endereços de e-mail etc. Basicamente, qualquer tipo de informação que você deseja manter para uso posterior pode ser armazenado em um banco de dados.

Claro que os dados que você armazena tem que ter alguma ordem aparente. Isto é onde os sistemas de gerenciamento de banco de dados entram em jogo. Esses sistemas são usados ​​para se comunicar com o banco de dados e permitir que os desenvolvedores estruturem, armazenem, despejam e modifiquem dados.

O MySQL é um desses sistemas de gerenciamento de banco de dados. É um dos mais populares, devido à sua facilidade de uso e suporte comunitário. De fato, sua penetração atraiu até grandes empresas como Facebook e Twitter, que o utilizam.

Neste tutorial iremos conhecer os conceitos básicos do MySQL e aprender como criar um usuário no MySQL. Nós também aprenderemos como conceder privilégios para usuários do MySQL. Vamos usar a linha de comando para este tutorial.

O que você precisa?

Antes de começar este guia, você precisará do seguinte:

  • MySQL instalado em sua máquina. Tutorial sobre como instalá-lo no CentOS VPS pode ser encontrado aqui.

Etapa 1 – Criando um Usuário MySQL e Concedendo Todos os Privilégios

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 que contratam desenvolvedores para manter bancos de dados, mas não querem dar-lhes a capacidade de excluir ou modificar qualquer informaçã, muitas vezes ganham credenciais de um usuário não-root. Desta forma, a empresa pode manter o controle do que seus desenvolvedores podem e não podem fazer com os dados.

Criar um novo usuário é bastante simples no MySQL. Mostraremos como criar um novo usuário MySQL e como lhes conceder todos os privilégios de seu banco de dados. Não é muito esperto, no sentido prático, dar um reinado total a um usuário não-root, mas é um bom ponto de entrada para aprender sobre privilégios de usuário. Para criar um novo usuário, siga estas etapas:

  1. Acesse a linha de comando e entre no servidor MySQL:
mysql

Se você quiser praticar esses comandos em seu servidor VPS, você precisará primeiro estabelecer a conexão SSH.

  1. Execute o seguinte comando:
CREATE USER 'não-root' @ 'localhost' IDENTIFICADO POR '123'

Neste comando, ‘não-root’ é o nome que damos ao nosso novo usuário. E ‘123’ é a senha para este usuário. Você pode substituir esses valores pelo seu próprio, dentro das aspas.

  1. Simplesmente criar este novo usuário não é suficiente. Você tem que lhes conceder privilégios. Para conceder ao usuário recém-criado todos os privilégios do banco de dados, execute o seguinte comando:
CONCEDE TODOS OS PRIVILÉGIOS ON *. * Para 'não-root' @ 'localhost';
  1. Para que as alterações tenham efeito, liberte imediatamente os privilégios digitando o seguinte comando:
PRIVILÉGIOS FLUSH;

E é isso! Seu novo usuário tem o mesmo acesso ao banco de dados que o usuário root.

Etapa 2 – Concedendo Privilégios Específicos para um Usuário MySQL

Conforme mencionado anteriormente, não é inteligente conceder acesso de nível root a um usuário não-root. Na maioria das vezes, você vai querer dar diferentes níveis de acesso a diferentes tipos de usuários. O MySQL consegue estes privilégios, pelo seguinte comando simples:

GRANT [tipo de permissão] ON [nome do banco de dados]. [Nome da tabela] TO 'não-root' @ 'localhost';

Basta substituir o valor ‘tipo de permissão’ pelo tipo de permissão que você deseja conceder ao novo usuário. Você também tem que especificar nomes de banco de dados e tabela, o que dá ao usuário root o controle sobre a concessão de privilégios.

Semelhante ao exemplo acima, ‘não-root’ é o nome de usuário, então você está livre para substituí-lo por sua própria escolha.O MySQL tem bastantes tipos de permissão, alguns dos quais são descritos abaixo:

  • CREATE – Permite que os usuários criem bancos de dados / tabelas
  • SELECT – Permite que os usuários recuperem dados
  • INSERT – Permite que os usuários adicionem novas entradas em tabelas
  • UPDATE – Permite que os usuários modifiquem entradas existentes em tabelas
  • DELETE – Permite que os usuários excluam entradas da tabela
  • DROP – Permite que usuários excluam bancos de dados inteiros / tabelas

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 'não-root' @ 'localhost';

Code>

Claro, você pode enfrentar uma situação onde você precisa anular privilégios de um usuário. Você pode fazer isso usando o seguinte comando:

Procurando uma alternativa melhor de hospedagem?

Migre seu site para a melhor e mais rápida plataforma de hospedagem com suporte dedicado 24/7.

REVOKE [tipo de permissão] ON [nome do banco de dados]. [Nome da tabela] FROM 'non-root' @ 'localhost';

Por exemplo, para anular todos os privilégios para nosso usuário não-root, devemos usar:

REVOQUE TODOS OS PRIVILEGES ON *. * FROM 'não-root' @ 'localhost';

Finalmente, você pode excluir completamente um usuário existente usando o seguinte comando:

DROP USER 'não-root' @ 'localhost';

Lembre-se, para executar qualquer um desses comandos, você precisa ter acesso root. Além disso, certifique-se de executar PRIVILÉGIOS DE FLUSH após quaisquer alterações feitas aos privilégios.

Conclusão

Neste tutorial, aprendemos algumas das noções básicas sobre os privilégios do MySQL e como criar um novo usuário do MySQL. Especificamente, aprendemos sobre:

  • Criação de novos usuários e concessão de todos os privilégios;
  • Conceder privilégios específicos aos usuários, bem como anular esses privilégios e excluir usuários.

Conceder privilégios pode parecer uma grande  tarefa no desenvolvimento de aplicações web, mas é uma medida de segurança vital para o gerenciamento e a manutenção do banco de dados. Quase todas as aplicações modernas dependem de bancos de dados, tornando essencial que os desenvolvedores aprendam a conceder ou anular privilégios de banco de dados MySQL.

Consulte nossos artigos e fique por dentro de todo conteúdo atualizado para a melhor performance do seu website!

hostinger-blog

 

Deixe um Comentário

Deixe seu comentário!

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Comece a Economizar Agora!

Hospedagem com tudo incluso e nome de domínio
R$6
39
/mês*

Junte-se a centenas de inscritos em todo o mundo

e receba um resumo dos tutoriais mais recentes direto para o seu e-mail

Please wait...

Obrigado por se inscrever!