Ubuntu下忘記MySQL密碼,從安全模式進入的解決方法
阿新 • • 發佈:2018-12-06
Ubuntu 16.0 系統下忘記了 MySQL 的登入密碼,現記錄從安全模式進入資料庫的解決方法,供參考。
文章來源:ubuntu 16.04系統下解決MySQL 5.7版本的root使用者重置密碼問題
這裡只是忘記 MySQL 的密碼,不涉及安裝問題,故不檢查安裝是否成功。
重置開始
mysql -u root -p
由於忘記密碼,這裡提示登陸失敗,所以從安全模式進入,然後再重置密碼。
sudo /etc/init.d/mysql stop ------------------------------------- [sudo] 密碼: [ ok ] Stopping mysql (via systemctl): mysql.service. $ sudo /usr/bin/mysqld_safe
輸入第一行,結束 MySQL 執行,成功,會提示下面兩行;
輸入第四行,成功。沒有任何報錯則可以另外開啟一個終端視窗進行下一步操作;
但是一般會報錯,比如提示 mysqld_safe Directory ‘/var/run/mysqld’ for UNIX socket file don’t exists.
不要慌!輸入以下程式碼:
sudo mkdir -p /var/run/mysqld
sudo chown mysql:mysql /var/run/mysqld
然後再次輸入:
sudo /usr/bin/mysqld_safe
此時便成功進入了安全模式,重新進入 MySQL,無需密碼。
mysql -u root
然後按如下步驟重置密碼:
> use mysql;
> update user set authentication_string = PASSWORD("這裡輸入新密碼") where User='root'; #更改密碼
> update user set plugin="mysql_native_password"; # 如果沒這一行可能也會報一個錯誤,因此需要執行這一行
> flush privileges; #更新所有操作許可權
> quit;
重新用新密碼進入 MySQL:
> sudo /etc/init.d/mysql stop > sudo /etc/init.d/mysql start # 重啟 mysql > mysql -u root -p
重置完畢!