程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> MySQL丟失root密碼後應當如何補救

MySQL丟失root密碼後應當如何補救

日期:2017/1/12 12:28:48      編輯:關於MYSQL數據庫

首先,我們需要結束掉MySQL的服務進程。

  然後在Windows下面一是可以通過任務管理器來結束掉,應該是mysql-nt.exe。二是,如果你的MySQL注冊為服務的話,可以到服務裡面把他先停掉。

  在Linux或者unix下面直接kill MySQL的服務進程就可以。

  然後,再用 --skip-grant-tables 選項啟動MySQL服務。

  在Windows下面,到mysql安裝目錄的bin目錄下面運行:mysql-nt --skip-grant-tables 就可以啟動mysql服務,這樣就可以在無密碼的狀態下進入mysql用MySQL -uroot -p

  在Linux下面 一般mysql目錄在:/usr/bin/safe_MySQLd --skip-grant-tables,執行就可以啟動了。

  在Freebsd下面,在/usr/local/etc/rc.d/MySQL-server --skip-grant-tables ,執行啟動。

  其他的Unix系統沒有研究過。呵呵。

  進入MySQL以後,執行一下語句:

  use MySQL   update user set password=passWord("new_pass") where user="root";   flush privileges;

  最後結我們來結束現在的mysql服務進程,重新啟動你的MySQL,就可以用你設置的密碼登錄了。


--------------------------------------------------------------------------------

一. 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;
  sudo /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 登錄了。

(完)

-------------------------------------------------------------------------------------

1,停止MYSQL服務,CMD打開DOS窗口,輸入 net stop MySQL2,在CMD命令行窗口,進入MYSQL安裝目錄 比如 d:\MySQL20080505\bin3,進入mysql安全模式,即當MySQL起來後,不用輸入密碼就能進入數據庫。
命 令為: mysqld-nt --skip-grant-tables 4,重新打開一個CMD命令 行窗口,輸入mysql -uroot -p, 使用空密碼的方式登錄MySQL(不用輸入密碼,直接按回車)
MySQL丟失root密碼後應當如何補救5,輸入以下命令開始修改root用戶的密碼(注意:命令中MySQL.user中間有個“點”)
  mysql> update MySQL.user set password=PASSWord('新密碼') where User='root'; 6,刷新權限表
MySQL> flush privileges;
MySQL丟失root密碼後應當如何補救7,退出
mysql> quit 這樣MYSQL超級管理員賬號 ROOT已經重新設置好了,接下來 在任務管理器裡結束掉 mysql-nt.exe 這個進程,重新啟動MYSQL即可!(也可以直接重新啟動服務器) MYSQL重新啟動 後,就可以用新設置的ROOT密碼登陸MySQL了!

                       以下為成功版

---------------------------------------- -----------------------------------------------------

打開命令行窗口,停止mysql服務:        Net stop MySQL
啟動mysql,一般到mysql的安裝路徑,找到 MySQLd-nt.exe
執行:MySQLd-nt --skip-grant-tables 當前窗口將會停止。 

(如果沒有找到mysqld-nt.exe;則執行:MySQLd --skip-grant-tables)
另外打開一個命令行窗口,執行mysql   如果提示沒有這個命令,先進入MYSQL的安裝位置下BIN目錄再運行mysql>use MySQL
>update user set password=password("new_passWord") where user="root";
>flush privileges;
>exit

對了,差點忘了。最後還要用任務管理器殺掉一個進程MySQLd.exe

然後再重啟mysql服務,不殺掉進程MySQL是重啟不了的

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved