GRANT
destina-se a adicionar privilégios aos usuários. Confusamente, ele também tem a capacidade de criar usuários e alterar suas senhas. Essa funcionalidade está obsoleta e não deve ser usada. Se você usar
GRANT
com IDENTIFIED
você pode alterar a senha do usuário:Além disso,
GRANT
pode criar o usuário se ele não existir:Consulte https://dev.mysql.com/doc/refman/ 5.7/pt/grant.html
Em resumo, use
CREATE
para criar um usuário e use GRANT
para adicionar privilégios:CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON database.* TO 'username'@'localhost';