在 MySQL 8.0 中向 Root 用户授予所有权限
在以前版本的 MySQL 中,向 root 用户授予所有权限非常简单,使用授予命令。然而,在 MySQL 8.0 中,这种方法会遇到语法错误。
遇到错误
尝试使用以下语法授予所有权限时:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' 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 'root' WITH GRANT OPTION' at line 1.
修订方法
从 MySQL 8 开始,不再支持使用 GRANT 命令创建用户。相反,以下两步过程是必要的:
1。创建用户
使用CREATE USER命令创建root用户:
CREATE USER 'root'@'%' IDENTIFIED BY 'PASSWORD';
2.授予权限
然后,使用 GRANT 命令授予所有权限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
最后一步
确保更改生效效果,冲洗权限:
FLUSH PRIVILEGES;
警告
使用WITH GRANT OPTION 授予所有权限会带来重大安全风险。建议谨慎行事并仅授予必要的权限。有关用户权限和安全性的更多信息,请参阅 MySQL 文档。
以上是如何授予MySQL 8.0 Root用户所有权限?的详细内容。更多信息请关注PHP中文网其他相关文章!