MySQL 是一種流行的開源資料庫管理系統,被廣泛應用於企業和個人的應用程式開發。然而,由於各種原因,有時會發生忘記 MySQL root 密碼的情況。當這種情況發生時,您不必擔心,因為有幾種方法可以重設 MySQL root 密碼。
首先,您可以嘗試使用 MySQL 預設的 root 使用者和空密碼來嘗試登錄,這可能是由於您未更改或忘記更改密碼。在命令列模式下執行以下命令,如果您可以直接登錄,則可以透過修改密碼來變更MySQL root 密碼:
mysql -u root -p
如果您無法使用預設的root 使用者和空密碼進行登錄,則可以考慮使用下列方法重設您的MySQL root 密碼:
方法1:使用安全模式重設MySQL root 密碼
步驟1:關閉MySQL 服務。
在 MySQL 伺服器中,您可以使用下列命令關閉 MySQL 服務:
sudo systemctl stop mysql
步驟2:啟動 MySQL 伺服器安全模式。
在 Linux 系統中,需要使用 root 權限啟動 MySQL 伺服器安全模式,您可以執行下列命令:
sudo mysqld_safe --skip-grant-tables &
步驟3:登入 MySQL 伺服器,不需要密碼。
在安全模式下啟動 MySQL 伺服器後,您可以登入 MySQL 伺服器,而無需提供密碼。輸入以下命令登入:
mysql -u root
步驟4:使用以下命令更改 root 使用者密碼:
UPDATE mysql.user SET authentication_string=PASSWORD('new_password') WHERE User='root';
您需要將 "new_password" 替換為您想要設定的新密碼。這將更改 MySQL root 使用者的密碼。
步驟5:刷新權限並退出 MySQL。
更新密碼後,您需要刷新 MySQL 使用者權限,並退出 MySQL。輸入以下命令以完成此操作:
FLUSH PRIVILEGES; EXIT;
步驟6:重新啟動 MySQL 伺服器。
在完成上述步驟後,您需要關閉安全模式並重新啟動 MySQL 伺服器。透過輸入以下命令來完成此操作:
sudo systemctl stop mysql sudo systemctl start mysql
現在您已經成功重設 MySQL root 密碼並重新啟動了 MySQL 伺服器。
方法2:使用MySQL的init-file選項重設MySQL root密碼
步驟1:建立一個名為 resetpass.sql 的文件,並開啟它。
在檔案中輸入以下命令:
UPDATE mysql.user SET authentication_string=PASSWORD('new_password') WHERE User='root'; FLUSH PRIVILEGES;
將 "new_password" 替換為您要設定的新密碼。
步驟2:停止 MySQL 服務。
透過執行下列命令,您可以停止 MySQL 服務:
sudo systemctl stop mysql
步驟3:使用 --init-file 選項啟動MySQL服務。
在命令列中,將resetpass.sql 檔案傳遞給MySQL 伺服器以初始化新密碼,如下所示:
sudo mysqld --init-file=/path/to/resetpass.sql &
要指定正確的路徑,將/path/to/resetpass. sql 替換為resetpass.sql 檔案的實際路徑。
步驟4:檢查MySQL的日誌檔案是否有異常。
在上一個步驟中,您現在可以重新啟動MySQL服務。啟動MySQL後,您可以透過查看MySQL的日誌檔案來確認是否有例外日誌:
sudo tail -f /var/log/mysql/error.log
步驟5:刪除 resetpass.sql 檔案。
啟動 MySQL 伺服器後,您可以刪除 resetpass.sql 文件,以避免其他人存取並更改 root 密碼。
方法3:使用dpkg-reconfigure重新設定MySQL root密碼
步驟1:停止 MySQL 伺服器。
在命令列中,透過輸入以下命令來停止 MySQL 伺服器:
sudo systemctl stop mysql
步驟2:啟動 dpkg-reconfigure 工具。
在命令列中,輸入以下命令以啟動 dpkg-reconfigure 工具:
sudo dpkg-reconfigure mysql-server-5.7
步驟3:跟隨精靈提示,並重新設定 MySQL root 密碼。
在 dpkg-reconfigure 工具的精靈中,您需要為 MySQL root 使用者設定一個新密碼。依照工具提示進行操作,完成設定新密碼。
步驟4:重新啟動 MySQL 伺服器。
現在您已經成功重設MySQL root 密碼,請輸入以下指令重新啟動MySQL 伺服器:
sudo systemctl start mysql
結論
在本文中,我們介紹了三種不同的方法來重設MySQL root 密碼。雖然每種方法都有所不同,但它們都可以用來避免遺忘 MySQL root 密碼所帶來的問題。無論您選擇哪種方法來重設密碼,都需要注意安全性,並確保只有有權存取MySQL伺服器的人才能重設密碼。透過採取必要的預防措施並執行正確的步驟,您可以輕鬆地重設您的MySQL root密碼。
以上是mysql的root密碼忘記的詳細內容。更多資訊請關注PHP中文網其他相關文章!