mysql> update mysql.user set password=PASSWORD(‘新密碼’) where User=’root’;
mysql> flush privileges;
mysql> exit;
mysql 新設置用戶或更改密碼後需用flush privileges刷新MySQL的系統權限相關表,不然會出現拒絕訪問,還有一種方法,就是從新啓動mysql服務器,來使新設置生效。 mysql
具體例子: sql
1.用戶root用戶進入mysql再打開mysql數據庫(use mysql)後-
create user stu identified by ‘stu’; ##建立一用戶stu並添加密碼爲stu
exit; ##退出測試
2.用新用戶從新進入mysql
mysql -ustu -pstu ##進入成功
3.從新使用root用戶進入mysql並打開mysql數據庫
update user set password=password (‘123456’) where user='stu'; ##更改stu用戶密碼爲123456
exit; ##再次退出測試-
4.直接以用戶stu身份進入,用新密碼進入看是否成功
mysql -ustu -p123456; ##報錯,密碼不正確
5. 從新以root 用戶登錄並進入mysql數據庫,從新修改用戶密碼-
update user set password=password (‘123456’) where user='123456'; ##更改stu用戶密碼爲123456
flush privileges; ##刷新MySQL的系統權限相關表-
exit;
6.再次退出,並以stu用戶123456密碼進入,測試成功!
---------------------------------------------------
更新用戶權限後,更應該刷新權限表!
修改mysql.user表後也須要刷新權限! 數據庫