重設 MySQL / MariaDB 忘記的 root 密碼

在安裝 MySQL 或 MariaDB 伺服器後, 當執行 mysql_secure_installation 後會完成一些基本的安全設定, 其中一項就是設定 root 的密碼。

如果在往後忘記了這個 MySQL root 密碼, 可以用以下方法重設, 以下文章會以 CentOS 環境作為例子.

首先將運行中的 MySQL Server 停止執行:

# systemctl stop mariadb

# systemctl stop mysql

# /etc/rc.d/init.d/mysqld stop

然後啟動 MySQL 並加入 skip-grant-tables 選項, 目的是可以用空密碼登入 MySQL 的 root 帳號:


現在可以用空密碼直接登入 MySQL:

# mysql -u root

登入 MySQL Server 後, 用以下指令重設 MySQL 的 root 密碼, 將下面的 new-password 改成你想設定的新密碼:

現在可以重新啟動 MySQL Server:

重新啟動 MySQL 後, 便可以用新設置的 root 密碼登入 MySQL.


Leave a Reply