MySQL 8.0执行grant授权语句报1064语法错误问题求解
报错核心原因
MySQL 8.0 版本已经移除了 GRANT 语句中直接通过 IDENTIFIED BY 同时设置密码的语法,这种合并写法仅支持 MySQL 5.7 及更早版本,8.0 开始要求用户创建和权限分配拆分为独立操作。
正确执行步骤
- 首先创建数据库用户并设置密码:
CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'wordpress#demo';
- 再给该用户分配
blog_demo_com库的所有权限:
GRANT ALL PRIVILEGES ON blog_demo_com.* TO 'wordpress'@'localhost';
- 执行权限刷新命令让配置立即生效:
FLUSH PRIVILEGES;
补充说明
如果 wordpress@localhost 用户已存在,仅需要修改密码,可单独执行用户修改语句:
ALTER USER 'wordpress'@'localhost' IDENTIFIED BY 'wordpress#demo';
之后再执行赋权操作即可。
内容的提问来源于stack exchange,提问作者user7693832
相关产品推荐
相关产品推荐

