您好,登錄后才能下訂單哦!
近些時間在開始學MySQL,安裝挺順利的,按照網上現成的教程就能安裝成功。
但是,在輸入
mysql -uroot -p
再輸入密碼時,遇到了這個情況
Access denied for user 'root'@'localhost' (using password: YES)
在網上找了很多解決辦法,但是基本只有一個,在.ini文件中的mysqld條目添加
skip-grant-tables
然后重啟服務器,再按照剛剛的步驟再來一遍(最后不輸入密碼),但是還是一條語句把我攔了下來
Access denied for user 'root'@'localhost' (using password: NO)
綜合了網上很多方法,自己一個一個拼接著去試,最后成功了
總體上的思想還是修改.ini配置文件的內容,不過是通過命令行的形式修改,不知道是不是因為版本迭代了把以前那個直接修改文件的方法屏蔽了,無論如何,通過命令行修改在MySQL 8.0上是可以的。
下面開始吧。
以管理員身份打開cmd,切換到MySQL的bin目錄
關閉MySQL服務器
net stop mysql
跳過輸入密碼的步驟(注意:文件名字與路徑要與自己的吻合)
mysqld --defaults-file="D:\MySQL\my.ini" --console --skip-grant-tables
如果出現類似截圖圈起來的語句則說明成功
重啟服務器
net start mysql
登錄MySQL服務器
mysql -uroot -p
輸入密碼之后就能登錄成功了。(數字1跟字母l很像很像)
到這一步差不多就能完成了,但是當我輸入
show databases;
MySQL給我的反饋是:
You must reset your password using ALTER USER statement before executing this statement.
我的猜測應該是MySQL認為安裝時提供的隨機密碼不安全,讓用戶重置密碼。
網上找了一下,然后找到的現成辦法
參考文章:https://dev.mysql.com/doc/refman/5.7/en/alter-user.html
密碼永不過期的
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密碼' PASSWORD EXPIRE NEVER;
密碼有限期的
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密碼' PASSWORD EXPIRE;
然后重新登錄一下服務器就能正常的操作了。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。