Nesta aula, vamos aprender como gerenciar usuários e permissões no MySQL. Isso é importante para garantir a segurança e a privacidade dos dados em seu banco de dados.
Para gerenciar usuários e permissões no MySQL, você pode usar o comando GRANT
para conceder privilégios a um usuário ou grupo de usuários e o comando REVOKE
para remover esses privilégios.
A sintaxe básica para o comando GRANT
é a seguinte:
sqlGRANT privilégio ON banco_de_dados.tabela TO 'usuário'@'host';
privilégio
é o tipo de privilégio que você deseja conceder. Pode serALL
,SELECT
,INSERT
,UPDATE
,DELETE
,CREATE
,DROP
,INDEX
,ALTER
,GRANT OPTION
ou qualquer combinação desses privilégios separados por vírgulas.banco_de_dados
etabela
são o banco de dados e a tabela aos quais você deseja conceder privilégios.usuário
é o nome do usuário ao qual você deseja conceder privilégios.host
é o endereço IP ou nome do host ao qual você deseja conceder privilégios.
Por exemplo, se você quiser conceder a um usuário chamado john
o privilégio de seleção em uma tabela chamada clientes
em um banco de dados chamado loja
, você pode executar o seguinte comando:
sqlGRANT SELECT ON loja.clientes TO 'john'@'localhost';
Se você quiser conceder todos os privilégios a um usuário chamado jane
em todas as tabelas em um banco de dados chamado loja
, você pode executar o seguinte comando:
sqlGRANT ALL ON loja.* TO 'jane'@'localhost';
Você também pode conceder privilégios a todos os usuários em um determinado host usando um curinga *
. Por exemplo, se você quiser conceder privilégios de seleção a todos os usuários em localhost
para uma tabela chamada produtos
em um banco de dados chamado loja
, você pode executar o seguinte comando:
sqlGRANT SELECT ON loja.produtos TO '*'@'localhost';
Para remover um privilégio de um usuário ou grupo de usuários, você pode usar o comando REVOKE
. A sintaxe básica é a seguinte:
sqlREVOKE privilégio ON banco_de_dados.tabela FROM 'usuário'@'host';
privilégio
é o tipo de privilégio que você deseja remover.banco_de_dados
etabela
são o banco de dados e a tabela dos quais você deseja remover privilégios.usuário
é o nome do usuário do qual você deseja remover privilégios.host
é o endereço IP ou nome do host do qual você deseja remover privilégios.
Por exemplo, se você quiser remover o privilégio de seleção de um usuário chamado john
para uma tabela chamada clientes
em um banco de dados chamado loja
, você pode executar o seguinte comando:
sqlREVOKE SELECT ON loja.clientes FROM 'john'@'localhost';