ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
方式一:改表法
修改更改"mysql"数据库里的"user"表里的"host"项,从"localhost"改为"%"
update user set host='%' where user='root';
方式二:授权法
通过GRANT命令可以授予主机远程访问权限
--赋予任何主机访问权限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
--允许指定主机(IP地址)访问权限:
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'root' WITH GRANT OPTION;
通过FLUSH PRIVILEGES
刷新权限表使修改生效:
FLUSH PRIVILEGES;
如果MySQL8以上版本无法授权:
分两步 先创建用户 对该用户分配用户权限 ,最后刷新权限
CREATE USER 'root'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;
如果
CREATE 无法执行可以先删除改用户再新建:
drop user root;
CREATE USER 'root'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES;