解決MyQL資料庫中1045錯誤的方法——Windows系統(轉)
問題如圖
這個錯誤是這樣說的:
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>update user set password=password("123456") whereuser="root"; //修改資料庫的密碼
mysql>flush privileges; //重新整理資料庫
這要步驟已經完成,我們來看看修改後的使用者和密碼:
到這裡修改密碼的工作已經完成。接下來要將在my.ini中新增的語句刪掉。刪掉之後再重啟伺服器,在測試連結,如果沒有錯誤,一切OK;如果刪掉語句,重啟伺服器之後任然有1045錯誤,那麼,還是在my.ini原來刪掉這條語句的位置中新增這條語句:skip-grant-tables,再重啟伺服器,再測試,一切OK。
服務在哪裡?
ctrl + alt + delete —>工作管理員—>服務—>點右鍵—>重啟服務