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

Criando um usuário no MySQL


Logo após instalar o MySQL, você terá o root usuário disponível.

Este é o usuário que você pode usar para tentar ver se o MySQL está funcionando, mas não deve ser o usuário para outros tipos de uso.

Por quê? Porque é muito poderoso .

Com grandes poderes vêm grandes responsabilidades (disse o tio do Homem-Aranha). E, em particular, grande perigo se você cometer erros.

Em vez disso, você deve criar usuários ad-hoc que tenham apenas permissões para realizar seu trabalho e nada mais. O mesmo para usar Linux ou qualquer sistema Unix, por exemplo:você não quer usar o root usuário, mas sua própria conta de usuário.

Para criar um novo usuário, conecte-se ao MySQL usando o root do utilizador:
mysql -u root -p



então use o comando
CREATE USER '<username>'@'localhost' IDENTIFIED BY '<password>';

Por exemplo, para criar um usuário chamado test_user com senha test_password12A execute o comando:
CREATE USER 'test_user'@'localhost' IDENTIFIED BY 'test_password12A';

O comando deve retornar uma linha dizendo Query OK, 0 rows affected (X.XX sec) :



Se você usou uma senha inválida, o sistema informará algo como ERROR 1819 (HY000): Your password does not satisfy the current policy requirements . Neste caso, o erro diz que a senha não é complexa o suficiente, porque quando instalei o MySQL eu disse para usar uma determinada política de senhas.

Isso é ótimo! Agora o usuário foi criado e podemos conectar usando esse usuário ao MySQL. Na linha de comando, você pode sair digitando QUIT , e digitando:
mysql -u test_user -p



Agora, se eu tentar criar um banco de dados, obterei um erro dizendo ERROR 1044 (42000): Access denied for user 'test_user'@'localhost' to database 'testing' :



Por quê? Porque o usuário não tem permissão para criar um novo banco de dados .

Veremos como trabalhar com permissões em outro tutorial.

Vale a pena mencionar o @'localhost' string que usamos para criar o usuário. Isso diz ao MySQL que o usuário só pode se conectar do localhost. O que é bom ao testar as coisas e quando qualquer aplicativo que se conectará ao MySQL estiver sendo executado no mesmo computador que executa o DBMS.

Quando isso não for verdade, você precisa inserir manualmente o IP do qual o usuário se conectará ou usar o % curinga:
CREATE USER 'test_user'@'%' IDENTIFIED BY 'test_password12A';

Quero encerrar este tutorial mostrando como remover o usuário que criamos:
DROP USER 'test_user'@'localhost';