MySQL 是一個流行的關聯式資料庫管理系統,被廣泛應用於網站、應用程式以及其他資料驅動的系統。然而,有時候我們會忘記 MySQL 資料庫的管理員密碼,導致無法登入資料庫進行管理。這時候,我們需要還原 MySQL 資料庫的密碼。
在 MySQL 5.6 中,密碼雜湊加密演算法預設使用 sha256 ,在復原過程中需要進行一些手動操作。本文將介紹如何還原 MySQL 5.6 的遺失密碼。
步驟1:停止 MySQL 服務
在還原密碼前,需要先停止 MySQL 服務。在Linux 或macOS 上可以使用下列指令:
$ sudo service mysql stop
在Windows 上可以使用下列指令:
> net stop mysql
步驟2:建立一個跳板檔案
在還原密碼過程中,我們需要建立一個跳板文件,用於修改MySQL 資料庫的權限系統,以便我們可以建立新的管理員帳戶。可以使用以下指令建立跳板檔案:
$ echo "ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';" > /var/lib/mysql/mysql-init && sudo chmod 700 /var/lib/mysql/mysql-init && sudo chown mysql:mysql /var/lib/mysql/mysql-init
上述指令會將新密碼設定為 newpassword
,你可以將其替換為自己的密碼。
步驟3:重新啟動 MySQL 服務
在跳板檔案建立好後,需要重新啟動 MySQL 服務。在Linux 或macOS 上可以使用以下命令:
$ sudo service mysql start
在Windows 上可以使用以下命令:
> net start mysql
步驟4:執行MySQL 服務,使用跳板檔案修改密碼
在MySQL 重新啟動後,可以使用下列指令執行MySQL 服務,並使用跳板檔案修改密碼:
$ sudo mysqld_safe --init-file=/var/lib/mysql/mysql-init &
注意,這裡的跳板檔案路徑應該要和上文建立跳板檔案時設定的一致。
運行後,你將重新進入 MySQL 控制台。在控制台中可以使用以下指令查看現有的管理員帳號:
mysql> SELECT User FROM mysql.user WHERE Super_priv='Y';
在檢視帳號清單後,可以使用下列指令修改管理員帳號密碼:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
這裡的 newpassword
指你需要設定的新密碼。
步驟5:完成密碼復原
在修改密碼後可以使用下列指令檢視修改後的密碼是否生效:
mysql> SELECT User, Host, authentication_string FROM mysql.user;
以上是MySQL 5.6 中復原密碼的方法。當然,為了避免再次發生密碼遺失的狀況,建議大家定期備份 MySQL 資料庫,或是使用密碼管理工具來管理資料庫的密碼。
以上是如何恢復遺失的 MySQL 5.6 密碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!