check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY '123456' WITH GRANT OPTION' at line 1

错误如图:

场景,mysql8.0.17修改mysql用户权限,开启所有ip可访问
使用:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
报错,原因是要先创建用户再进行赋权,不能同时进行,所以我使用如下方法
使用mysql
use mysql
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';
修改ip为所有可访问
update user set host='%' where user='root';
查看
select host,user from user;
刷新
flush privileges;

或者可以使用
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
flush privileges;
navicat连接,ok
上面是修改root账号,以下是新增一个账号
create user 'test'@'localhost' identified by '密码';
flush privileges;刷新权限
其中localhost指本地才可连接

可以将其换成%指任意ip都能连接

也可以指定ip连接(192.168.110.131)
也可以指定网段(192.168.110.%)
grant all privileges on *.* to 'test'@'localhost' with grant option;
flush privileges;
ok

posted @ 2020-04-26 14:40  八戒vs  阅读(6976)  评论(0编辑  收藏  举报