Linux環境下mysql的root密碼忘記解決方法

總有一些人會忘記密碼,而後就用到下面的解決方法了mysql

MySQL密碼的恢復方法之一sql

1.首先確認服務器出於安全的狀態,也就是沒有人可以任意地鏈接MySQL數據庫。 由於在從新設置MySQL的root密碼的期間,MySQL數據庫徹底出於沒有密碼保護的 狀態下,其餘的用戶也能夠任意地登陸和修改MySQL的信息。能夠採用將MySQL對外的端口封閉,而且中止Apache以及全部的用戶進程的方法實現服務器的準安全狀態。最安全的狀態是到服務器的Console上面操做,而且拔掉網線。數據庫

2.修改MySQL的登陸設置: 
# vi /etc/my.cnf 
在[mysqld]的段中加上一句:skip-grant-tables 保存而且退出vi。
ubuntu

3.從新啓動mysqld 
# /etc/init.d/mysqld restart  ( service mysqld restart )
安全

4.登陸並修改MySQL的root密碼服務器

mysql> USE mysql ; 
mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ; 
mysql> flush privileges ; 
mysql> quit
ide

5.將MySQL的登陸設置修改回來 
# vi /etc/my.cnf 
將剛纔在[mysqld]的段中加上的skip-grant-tables刪除 
保存而且退出vi。
ui

6.從新啓動mysqld 
# /etc/init.d/mysqld restart   ( service mysqld restart )
spa

7.恢復服務器的正常工做狀態操作系統

將步驟一中的操做逆向操做。恢復服務器的工做狀態。

 

MySQL密碼的恢復方法之二

若是忘記了MySQL的root密碼,能夠用如下方法從新設置:

1. KILL掉系統裏的MySQL進程; 
killall -TERM mysqld

2. 用如下命令啓動MySQL,以不檢查權限的方式啓動; 
safe_mysqld --skip-grant-tables &

3. 而後用空密碼方式使用root用戶登陸 MySQL; 
mysql -u root

4. 修改root用戶的密碼; 
mysql> update mysql.user set password=PASSWORD('新密碼') where User='root'; 
mysql> flush privileges; 
mysql> quit 
從新啓動MySQL,就可使用新密碼登陸了

 

MySQL密碼的恢復方法三

有可能你的系統沒有 safe_mysqld 程序(好比我如今用的 ubuntu操做系統, apt-get安裝的mysql) , 下面方法能夠恢復

1. 中止mysqld; 
/etc/init.d/mysql stop
(您可能有其它的方法,總之中止mysqld的運行就能夠了)

2. 用如下命令啓動MySQL,以不檢查權限的方式啓動; 
mysqld --skip-grant-tables &

3. 而後用空密碼方式使用root用戶登陸 MySQL; 
mysql -u root

4. 修改root用戶的密碼; mysql> update mysql.user set password=PASSWORD('newpassword') where User='root'; mysql> flush privileges; mysql> quit 從新啓動MySQL/etc/init.d/mysql restart就可使用新密碼 newpassword 登陸了。

相關文章
相關標籤/搜索