无法在MySQL 5.6中创建用户
我想创建一个用户,这将是我的classicmodels数据库中的一个管理员。 我希望我的管理员用户可以创建其他用户帐户并将其仅分配给classicmodels数据库。 我已经完成了以下步骤:
授予用户*.*
至'admin'@'%'用密码标识
授予经典模型的所有特权*到'admin'@'%'授权选项
现在以管理员身份登录:
错误1227(42000):访问被拒绝; 您需要(至少一个)此操作的CREATE USER权限
我没有看到,我犯了什么错误。 当我以root身份登录时,我在步骤3中授予了管理员的所有权限。 提前致谢。
您已为特定数据库(模式)授予所有特权,而不是全局特权。
运行以下查询并检查结果。
SELECT * FROM `mysql`.`db` WHERE `User` = 'admin' AND `Host` = '%';
SELECT * FROM `mysql`.`user` WHERE `User` = 'admin' AND `Host` = '%';
13.7.1.2 CREATE USER语法
...
...要使用此语句,您必须具有MySQL数据库的全局CREATE USER特权或INSERT特权。 ...
...
UPDATE
13.7.1.4 GRANT语法
...
CREATE TABLESPACE,CREATE USER,FILE,PROCESS,RELOAD,REPLICATION CLIENT,REPLICATION SLAVE,SHOW DATABASES,SHUTDOWN和SUPER权限是管理性的,只能在全局范围内授予。
...
您需要执行以下操作:
GRANT CREATE USER ON *.* TO 'admin'@'%';
FLUSH PRIVILEGES;
mysql> SHOW GRANTS FOR 'admin'@'%';
+------------------------------------------------------------------------------------------------------------+
| Grants for admin@% |
+------------------------------------------------------------------------------------------------------------+
| GRANT CREATE USER ON *.* TO 'admin'@'%' IDENTIFIED BY PASSWORD '*AA1420F182E88B9E5F874F6FBE7459291E8F4601' |
| GRANT ALL PRIVILEGES ON `classicmodels`.* TO 'admin'@'%' WITH GRANT OPTION |
+------------------------------------------------------------------------------------------------------------+
2 rows in set (0,00 sec)
链接地址: http://www.djcxy.com/p/69277.html
上一篇: Can't create user in MySQL 5.6
下一篇: Create View command