https://www.ostechnix.com/how-to-reset-mysql-or-mariadb-root-password/
作者 | Sk
譯者 | geekpi ???共計翻譯:798 篇 貢獻時間:1778 天
幾個月前,我在Ubuntu 18.04 上安裝了 LAMP[1]。今天,我嘗試以 root 使用者身份登入資料庫,但我完全忘記了密碼。經過一陣 Google 搜尋並瀏覽一些文章後,我成功重置了密碼。對於那些想知道如何做到這一點的人,這個簡短的教程解釋瞭如何在類 Unix 作業系統中重置 MySQL 或 MariaDB Root 密碼。
重置 MySQL 或 MariaDB Root 密碼
首先,停止資料庫。
如果你使用 MySQL,請輸入以下命令並下按回車鍵。
$ sudo systemctl stop mysql
對於 MariaDB:
$ sudo systemctl stop mariadb
接下來,使用以下命令在沒有許可權檢查的情況下重新啟動資料庫:
$ sudo mysqld_safe --skip-grant-tables &
這裡, --skip-grant-tables
選項讓你在沒有密碼和所有許可權的情況下進行連線。如果使用此選項啟動伺服器,它還會啟用 --skip-networking
選項,這用於防止其他客戶端連線到資料庫伺服器。並且,&
符號用於在後臺執行命令,因此你可以在以下步驟中輸入其他命令。請註意,上述命令很危險,並且你的資料庫會變得不安全。你應該只在短時間內執行此命令以重置密碼。
接下來,以 root 使用者身份登入 MySQL/MariaDB 伺服器:
$ mysql
在 mysql > 或 MariaDB [(none)] > 提示符下,執行以下命令重置 root 使用者密碼:
UPDATE mysql.user SET Password=PASSWORD('NEW-PASSWORD') WHERE User='root';
使用你自己的密碼替換上述命令中的 NEW-PASSWORD。
然後,輸入以下命令退出 mysql 控制檯。
FLUSH PRIVILEGES;
exit
最後,關閉之前使用 --skip-grant-tables
選項執行的資料庫。為此,執行:
$ sudo mysqladmin -u root -p shutdown
系統將要求你輸入在上一步中設定的 MySQL/MariaDB 使用者密碼。
現在,使用以下命令正常啟動 MySQL/MariaDB 服務:
$ sudo systemctl start mysql
對於 MariaDB:
$ sudo systemctl start mariadb
使用以下命令驗證密碼是否確實已更改:
$ mysql -u root -p
今天就是這些了。還有更多好東西。敬請期待!
乾杯!
via: https://www.ostechnix.com/how-to-reset-mysql-or-mariadb-root-password/
作者:SK[3] 選題:lujun9972 譯者:geekpi 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出