错误如图:
场景,mysql8.0.17修改mysql用户权限,开启所有ip可访问
使用:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
报错,原因是要先创建用户再进行赋权,不能同时进行,所以我使用如下方法
使用mysqluse 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