GRANT SELECT ON test.t_info TO `user01`@`123456` ;
> 1410 - You are not allowed to create a user with GRANT
> 查询时间: 0.001s
提示意思是不能用grant创建用户,mysql8.0以前版本grant在授权的时候隐式的创建用户,8.0以后已经不支持,所以必须先创建用户,然后再授权
mysql 8.0.28版本命令如下:
--创建用户
mysql> create user 'user01'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.05 sec)
-- 授权
mysql> grant all privileges on *.* to 'user01'@'localhost';
Query OK, 0 rows affected (0.02 sec)
-- 加载权限表
mysql> flush privileges;
Query OK, 0 rows affected (0.03 sec)
-- 修改密码
ALTER USER 'user01'@'localhost' IDENTIFIED BY '123456';
ALTER USER 'user03'@'localhost' IDENTIFIED BY '123456';
--删除用户
DROP USER `user01`@`localhost`;
DELETE FROM mysql.user WHERE Host = 'localhost' AND User = 'user03';
--查看权限
SHOW GRANTS FOR `user01`@`localhost`;
SHOW GRANTS FOR 'root'@'1581145';
--授权权限
GRANT SELECT,INSERT,UPDATE ON *.* TO 'user01'@'localhost';
--收回权限
REVOKE INSERT ON *.* FROM 'user01'@'localhost';