Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Conceder permissões a um usuário MySQL no Linux via linha de comando

Séries anteriores:
MySQL via linha de comando 101:interação básica com o banco de dados

Verificação de simulação

  • Estas instruções destinam-se a conceder permissões de usuário MySQL no Linux por meio da linha de comando
  • Estarei trabalhando em um servidor CentOS 6.5 gerenciado pelo Liquid Web Core e estarei conectado como root.

Faça login no MySQL


Primeiro, faremos login no servidor MySQL a partir da linha de comando com o seguinte comando:

mysql -u root -p

Nesse caso, especifiquei o usuário root com o sinalizador -u e, em seguida, usei o sinalizador -p para que o MySQL solicite uma senha. Digite sua senha atual para concluir o login.

Se você precisar alterar sua senha de root (ou qualquer outra) no banco de dados, siga este tutorial sobre como alterar uma senha para MySQL por meio da linha de comando.

Agora você deve estar em um prompt do MySQL que se parece muito com este:

mysql>

Se você ainda não criou um usuário MySQL, consulte nosso tutorial sobre como criar um usuário MySQL.

Conceder permissões ao usuário MySQL


A sintaxe básica para conceder permissões é a seguinte:

GRANT permission ON database.table TO 'user'@'localhost';

Aqui está uma pequena lista de permissões comumente usadas:
  • ALL - Permitir acesso completo a um banco de dados específico. Se um banco de dados não for especificado, permita acesso completo à totalidade do MySQL.
  • CREATE - Permite que um usuário crie bancos de dados e tabelas.
  • DELETE - Permitir que um usuário exclua linhas de uma tabela.
  • DROP - Permite que um usuário elimine bancos de dados e tabelas.
  • EXECUTE - Permite que um usuário execute rotinas armazenadas.
  • GRANT OPTION - Permitir que um usuário conceda ou remova os privilégios de outro usuário.
  • INSERIR - Permitir que um usuário insira linhas de uma tabela.
  • SELECT - Permitir que um usuário selecione dados de um banco de dados.
  • MOSTRAR BANCOS DE DADOS - Permitir que um usuário visualize uma lista de todos os bancos de dados.
  • UPDATE - Permitir que um usuário atualize linhas em uma tabela.

Exemplo nº 1: Para conceder permissões CREATE para todos os bancos de dados * e todas as tabelas * para o usuário que criamos no tutorial anterior, usuário de teste, use o seguinte comando:

GRANT CREATE ON *.* TO 'testuser'@'localhost';

Usar um asterisco (*) no lugar do banco de dados ou tabela é uma opção completamente válida e implica todos bancos de dados ou todos mesas.

Exemplo nº 2: Para conceder ao testuser a capacidade de descartar tabelas no banco de dados específico, tutorial_database, use a permissão DROP:

GRANT DROP ON tutorial_database.* TO 'testuser'@'localhost';

Quando terminar de fazer suas alterações de permissão, é uma boa prática recarregar todos os privilégios com o comando flush!

FLUSH PRIVILEGES;

Visualizar concessões para usuário do MySQL


Depois de conceder permissões a um usuário do MySQL, você provavelmente desejará verificá-las novamente. Use o seguinte comando para verificar as concessões para testuser :

SHOW GRANTS FOR 'testuser'@'localhost';

Os humanos mais úteis em hospedagem™

Orgulhamo-nos de ser os humanos mais úteis em hospedagem™! Nossa equipe de suporte está sempre disponível para ajudar com qualquer problema de servidor Dedicado, Nuvem ou VPS 24 horas por dia, 7 dias por semana, 365 dias por ano.

Estamos disponíveis por meio de nossos sistemas de tickets em [email protected], por telefone (800-580-4986) ou por um LiveChat para qualquer método que você preferir. Nós trabalhamos duro para você para que você possa relaxar.
Navegação da série<>