Mysql-8 执行授权语句错误:ERROR 1064 (42000)

今天在mysql执行授权语句

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password'WITH GRANT OPTION;

时提示如下错误:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY 'Tibco123'WITH GRANT OPTION' at line 1、

意识到版本问题后就百度mysql-8授权语句的语法,终于解决问题。

在Mysql 8版本中,不能使用 

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password'WITH GRANT OPTION;

这一行命令来设置用户权限,必须分两步来实现设置用户权限【先创建用户、在对该用户分配用户权限】,最后刷新权限

mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

 

posted @ 2020-09-11 16:43  帅气型男  阅读(7493)  评论(0编辑  收藏  举报