關於登錄mysql時遇到的 error1045 錯誤

        error 1045(28000):access denied for user 'root@localhost' (using password:yes)

解決該問題,網上普遍給出了以下的方法:

1.運行命令行界面,net stop mysql,然後修改my.ini文件,在[mysqld]下添加這句:skip-grant-tables;然後再net start mysql開啓MySQL服務;
2.在命令行界面登錄mysql:mysql -uroot -p再enter會讓你輸入password,這時可以跳過輸入密碼,直接enter進入mysql; 
3.要修改密碼
   ->use mysql;
   ->update user set password="(yourpassword)" where user="root";
   ->flash privileges;
   ->quit;
4.在my.ini 文件裏將skip-grant-tables註釋掉,再重啓mysql服務(net restart mysql / 在任務管理器中重啓)
5.(關鍵點)嘗試登錄mysql,這時任然會出現error 1045錯誤,因爲這裏有一個很關鍵的錯誤:password的設置需要PASSWORD('')函數,如果直接password=“...”,mysql自己解密出來的並不是你原來想設置的密碼,所以正確的修改語句:
UPDATE user SET password=PASSWORD('...') WHERE user="root";
至此,問題解決。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章