mysql> update mysql.user set password=PASSWORD(‘新密码’) where User=’root’;
mysql> flush privileges;
mysql> quit
答:
mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。
具体例子:
1.用户root用户进入mysql再打开mysql数据库(use mysql)后
create user xh identified by ‘xh’; //创建一用户xh并添加密码为xh
exit; //退出测试
2.返回C目录下用新用户重新进入mysql
mysql -uxh -pxh //进入成功
3.重新使用root用户进入mysql并打开mysql数据库
update user set password=password (‘monkey’) where user=’xh’; //更改xh用户密码为monkey
exit; //再次退出测试
4.直接以用户XH身份进入,用新密码进入看是否成功
mysql -uxh -pmonkey; //报错,密码不正确
5. 重新以ROOT 用户登陆并进入mysql数据库,重新修改用户密码
update user set password=password (‘monkey’) where user=’xh’; //更改xh用户密码为monkey
flush privileges; //刷新MySQL的系统权限相关表
exit;
6.再次退出,并以xh用户monkey密码进入,测试成功!