Pet*_*etr 11 mysql mysql-5.1 users
我只是尝试使用添加一个新用户到 MySQL
CREATE USER 'name'@'%' IDENTIFIED BY '...'
Run Code Online (Sandbox Code Playgroud)
但是,它失败并出现以下错误:
ERROR 1396 (HY000): Operation CREATE USER failed for 'name'@'%'
Run Code Online (Sandbox Code Playgroud)
仅为 localhost 添加用户工作正常:
CREATE USER 'name'@'localhost' IDENTIFIED BY '...'
Run Code Online (Sandbox Code Playgroud)
我不知道可能是什么问题。我会很感激任何想法。
(我正在使用mysql Ver 14.14 Distrib 5.1.66。)
red*_*guy 14
根据文档,如果您省略@'hostname'(即 CREATE USER 'name'),MySQL 会将其解释为具有 @'%'。您提供的错误消息表明系统中已经存在用户 'name'@'%':
mysql> CREATE USER 'name'@'%' IDENTIFIED BY 'test';
Query OK, 0 rows affected (0.04 sec)
mysql> CREATE USER 'name'@'%' IDENTIFIED BY 'test';
ERROR 1396 (HY000): Operation CREATE USER failed for 'name'@'%'
mysql> CREATE USER 'name' IDENTIFIED BY 'test';
ERROR 1396 (HY000): Operation CREATE USER failed for 'name'@'%'
Run Code Online (Sandbox Code Playgroud)
如果删除用户后仍然收到消息,请尝试运行 FLUSH PRIVILEGES。
另请参阅此 SO 问题以获取更多信息。