1. 程式人生 > >解決MySQL資料庫中1045錯誤的方法——Windows系統

解決MySQL資料庫中1045錯誤的方法——Windows系統

在各種各樣的適用場所,MySQL會出現各種各樣的問題,經過足足半年的長跑,我的資料庫終於修復了Bug,可以重新使用了。資料庫出問題,那可能是家常便飯了。經過這足足半年的煎熬,我決定在以後的日子裡,記錄下我在使用資料庫時遇到的色彩繽紛的問題,以及這些問題的解決方法。由此,今天寫了這篇部落格。

首先,給大家看看,這個問題是什麼樣子的。我在這裡用到的MySQL視覺化工具為Navicat。

這個錯誤是這樣說的:

1045    Access denied for user 'root'@'localhost' (using password:YES)

這個意思是說:使用者“root”@本地主機的訪問被拒絕

那為什麼會出現這種錯誤呢?

答案是這樣:這種問題的本質是使用者密碼出現錯誤。

那如何解決呢?

以下是我今天的解決經驗:

1.找到MySQL安裝路徑下的my.ini檔案,用記事本的方式開啟;


2.開啟後,找到mysqld這個位置,這個檔案的內容中有多個mysqld,注意看箭頭所指位置

3.在 [mysqld] 底下新增語句:skip-grant-tables,新增完畢後儲存。如果提示不讓修改這個檔案,則可將它複製到桌面,再用記事本開啟它,新增完畢後,將桌面上的檔案複製到原來的地方,賦值時選擇替換目標檔案;

好學的你肯定也想知道這個skip-grant-tables是什麼意思,如下介紹:

skip-grant-tables作為啟動引數的作用:MYSQL伺服器不載入許可權判斷,任何使用者都能訪問資料庫。

也就是說,啟用這個引數之後,資料庫的安全性會降低。

4.WIN+R —>cmd—>mysql -u root -p,這個命令是連線資料庫伺服器的命令;遇到Enter  passward:直接回車;


5.繼續執行如下操作:


mysql>use mysql          //使用這個資料庫

mysql>uodate user set passward=passward("123456") whrer user="root";   //修改資料庫的密碼

mysql>flush privileges;      //重新整理資料庫

這要步驟已經完成,我們來看看修改後的使用者和密碼:


到這裡修改密碼的工作已經完成。接下來要將在my.ini中新增的語句刪掉。刪掉之後再重啟伺服器,在測試連結,如果沒有錯誤,一切OK;如果刪掉語句,重啟伺服器之後任然有1045錯誤,那麼,還是在my.ini原來刪掉這條語句的位置中新增這條語句:skip-grant-tables,再重啟伺服器,再測試,一切OK。

服務在哪裡?

ctrl + alt + delete —>工作管理員—>服務—>點右鍵—>重啟服務

寫在最後:快結束的大三

時間很長,也很快,萬事不要輕易放棄,終將會有結果的!

不甘平庸,就要埋頭做事!加油吧,姑娘~


                                                                                                                                                               圖片來源:視覺中國