Android

Como criar contas de usuários mysql e conceder privilégios

Criar Usuário e Conceder Permissões no MySQL

Criar Usuário e Conceder Permissões no MySQL

Índice:

Anonim

O MySQL é o sistema de gerenciamento de banco de dados relacional de código aberto mais popular. O servidor MySQL nos permite criar várias contas de usuário e conceder privilégios apropriados para que os usuários possam acessar e gerenciar bancos de dados.

Este tutorial descreve como criar contas de usuário MySQL e conceder privilégios.

Antes de você começar

Estamos assumindo que você já possui o servidor MySQL ou MariaDB instalado no seu sistema.

Todos os comandos são executados dentro do shell do MySQL como usuário root ou administrativo. Os privilégios mínimos necessários para criar contas de usuário e definir seus privilégios são CREATE USER e GRANT .

Para acessar o shell do MySQL, digite o seguinte comando e digite sua senha de usuário root do MySQL quando solicitado:

mysql -u root -p

Crie uma nova conta de usuário MySQL

Uma conta de usuário no MySQL consiste em uma parte de nome de usuário e nome de host.

Para criar uma nova conta de usuário MySQL, execute o seguinte comando:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password'; Substitua o valor do espaço reservado newuser pelo seu novo nome de usuário pretendido e o valor do espaço reservado user_password pela senha do usuário.

No comando acima, a parte do nome do host é definida como localhost , o que significa que o usuário poderá se conectar ao servidor MySQL apenas a partir do localhost (ou seja, do sistema em que o MySQL Server é executado).

Para conceder acesso de outro host, altere a parte do nome do host ( localhost ) com o IP da máquina remota. Por exemplo, para conceder acesso a partir de uma máquina com IP 10.8.0.5 você deve executar:

CREATE USER 'newuser'@'10.8.0.5' IDENTIFIED BY 'user_password';

Para criar um usuário que possa se conectar a partir de qualquer host, use o curinga '%' como parte do host:

CREATE USER 'newuser'@'%' IDENTIFIED BY 'user_password';

Conceder privilégios a uma conta de usuário do MySQL

Existem vários tipos de privilégios que podem ser concedidos a uma conta de usuário. Você pode encontrar uma lista completa de privilégios suportados pelo MySQL aqui.

Os privilégios mais usados ​​são:

  • ALL PRIVILEGES - Concede todos os privilégios a uma conta de usuário. CREATE - A conta do usuário pode criar bancos de dados e tabelas. DROP - A conta do usuário pode descartar bancos de dados e tabelas. DELETE - A conta do usuário tem permissão para excluir linhas de uma tabela específica. INSERT - A conta do usuário pode inserir linhas em uma tabela específica. SELECT - A conta do usuário tem permissão para ler um banco de dados. UPDATE - A conta do usuário pode atualizar as linhas da tabela.

Para conceder privilégios específicos a uma conta de usuário, você pode usar a seguinte sintaxe:

GRANT permission1, permission2 ON database_name.table_name TO 'database_user'@'localhost';

aqui estão alguns exemplos:

  • Grand todos os privilégios para uma conta de usuário em um banco de dados específico:

    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:

    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:

    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:

    GRANT SELECT, INSERT, DELETE ON database_name.* TO database_user@'localhost';

Exibir privilégios de conta de usuário do MySQL

Para encontrar os privilégios concedidos a uma conta de usuário específica do MySQL, use a instrução SHOW GRANTS :

SHOW GRANTS FOR 'database_user'@'localhost';

+---------------------------------------------------------------------------+ | Grants for database_user@localhost | +---------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'database_user'@'localhost' | | GRANT ALL PRIVILEGES ON `database_name`.* TO 'database_user'@'localhost' | +---------------------------------------------------------------------------+ 2 rows in set (0.00 sec)

Revogar privilégios de uma conta de usuário do MySQL

A sintaxe para revogar um ou mais privilégios de uma conta de usuário é quase idêntica à da concessão de privilégios.

Por exemplo, para revogar todos os privilégios de uma conta de usuário em um banco de dados específico, use o seguinte comando:

REVOKE ALL PRIVILEGES ON database_name.* FROM 'database_user'@'localhost';

Remover uma conta de usuário existente do MySQL

Para excluir uma conta de usuário do MySQL, use a instrução DROP USER :

DROP USER 'user'@'localhost'

O comando acima removerá a conta do usuário e seus privilégios.

Conclusão

Este tutorial aborda apenas o básico, mas deve ser um bom começo para quem deseja aprender como criar novas contas de usuário MySQL e conceder privilégios.

mysql mariadb