mysql CREATE USER

Liz*_*ard 17 mysql database

我登录了mysql ...

mysql -u root -pmypass
Run Code Online (Sandbox Code Playgroud)

我已经运行以下命令来删除成功运行的数据库用户

mysql> FLUSH PRIVILEGES; DROP USER 'myuser_shop';
Run Code Online (Sandbox Code Playgroud)

然后,我可以使用以下命令成功添加用户,这也是成功的

mysql> FLUSH PRIVILEGES; CREATE USER 'myuser_shop' IDENTIFIED BY 'mypass';
Run Code Online (Sandbox Code Playgroud)

上面的命令创建一个用户将主机作为通配符(%)我遇到的问题是,如果我要创建一个主机称为localhost或外部IP的用户,我会收到以下错误:

mysql> FLUSH PRIVILEGES; DROP USER 'myuser_shop';
mysql> FLUSH PRIVILEGES; CREATE USER 'myuser_shop'@'localhost' IDENTIFIED BY 'mypass';

Query OK, 0 rows affected (0.00 sec)

ERROR 1396 (HY000): Operation CREATE USER failed for 'myuser_shop'@'localhost'
Run Code Online (Sandbox Code Playgroud)

有什么建议?

提前致谢

Sve*_*lov 13

这是一个在这里报告的错误 - http://bugs.mysql.com/bug.php?id=28331

删除后查看您的用户是否存在.

  • 实际上虽然它没有出现在用户表中,但它必须存在于db文件中,我特意删除了FLUSH PRIVILEGES; DROP USER'myuser_shop'@'localhost'; 然后CREATE USER工作了!谢谢 (5认同)