您好,登錄后才能下訂單哦!
本文首發于cartoon的博客
轉載請注明出處:https://cartoonyu.github.io/cartoon-blog
近些時間在開始學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上是可以的。
下面開始吧。
net stop mysql
mysqld --defaults-file="D:\MySQL\my.ini" --console --skip-grant-tables
![](https://cache.yisu.com/upload/information/20200310/35/73912.jpg)
net start 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/ref...
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密碼' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密碼' PASSWORD EXPIRE;
然后重新登錄一下服務器就能正常的操作了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。