問題描述:
Mysql 服務可以啟動,輸入mysql –u root –p 打回車后提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)。
解決方法:
第一種情況:未設置root密碼的
直接跳過MySQL的密碼認證過程即可,方法如下:
第一步:在mysql安裝目錄中找到my.ini文件,在文檔內搜索mysqld定位到[mysqld]文本段,在[mysqld]后面任意一行添加“skip-grant-tables”用來跳過密碼驗證的過程。具體如下:
第二步:重啟MySQL服務:
第三步:重啟之后,輸入指令mysql -u root -p 即可進入mysql。
第二種情況:設置root密碼但忘記的
這種情況通過重置密碼即可。
第一步:重置密碼的第一步就是跳過MySQL的密碼認證過程,具體方法看情況一。
第二步:使用sql來修改root的密碼,方法如下:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword'
mysql> flush privileges;
mysql> mysql > \q;
到這里root賬戶就已經重置成新的密碼了。
第三步:修改my.cnf,去掉剛才添加的內容,然后重啟MySQL。大功告成!