1. 程式人生 > 資料庫 >linux 重置mysql root 密碼(忘記mysql root密碼)

linux 重置mysql root 密碼(忘記mysql root密碼)

基本的思路是,以安全模式啟動mysql,這樣不需要密碼可以直接以root身份登入,然後重設密碼。

首先,我們停掉MySQL服務:

sudo service mysql stop

以上命令適用於Ubuntu和Debian。CentOS、Fedora和RHEL下使用mysqld替換mysql。

以安全模式啟動MySQL:

sudo mysqld_safe --skip-grant-tables --skip-networking &

注意我們加了--skip-networking,避免遠端無密碼登入 MySQL。

這樣我們就可以直接用root登入,無需密碼:

mysql -u root

接著重設密碼:

  1.   mysql> use mysql;
  2.   mysql> update user set password=PASSWORD("mynewpassword") where User='root';
  3.   mysql> flush privileges;

注意,命令後需要加分號。

重設完畢後,我們退出,然後啟動 MySQL 服務:

mysql > quit

quit不需要分號。

重啟服務:

sudo service mysql restart

同樣,以上命令適用於Ubuntu和Debian,Centos、Fedora和RHEL需要用mysqld替換mysql。

現在可以嘗試用新密碼登入了:

mysql -u root -pmynewpassword

注意,-p 和密碼間不能有空格。