首頁 >資料庫 >mysql教程 >Window下Mysql忘記root密碼怎麼重置的圖文詳細介紹

Window下Mysql忘記root密碼怎麼重置的圖文詳細介紹

黄舟
黄舟原創
2017-03-06 13:52:501589瀏覽

這篇文章主要介紹了Window下Mysql忘記root密碼的重置方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下

本人機器環境:

Windows 2008 R2

MySQL 5.6

#以「Window下忘記Mysql的root密碼」百度,找到一大堆解決方案。大多大同小異,比較經典的是百度文庫上的一篇【1】,圖文並茂,條理也比較清晰。立刻按照這篇文章所描述的操作。

具體操作如下:

  下列步驟如果新增了MySQL的環境變量,則可以直接執行mysql相關指令,否則必須到mysql安裝目錄的bin目錄下操作。

步驟如下:

1.停止mysql服務(以管理員身份,在cmd命令列下運行) net stop mysql

2.使用mysqld –skip-grant-tables 指令啟動mysql資料庫

D:\>net stop mysql MySQL 服務正在停止. MySQL 服務已成功停止。

D:\>mysqld --skip-grant-tables

#3.不關閉以上窗口,新開一個cmd窗口,輸入mysql - u root,直接按回車鍵

D:\>mysql -u root
Welcome to the MySQL monitor. Commands end with ; 
or \g. Your MySQL connection id is 1 Server version: 5.1.26-rc-community MySQL Community Server (GPL) Type 'help;'
 or '\h' for help. Type '\c' to clear the buffer.
mysql> update mysql.user set password=password('aaa') where user='root';

密碼可以自己隨便寫。

Query OK, 1 row affected (0.02 sec) Rows matched: 2 Changed: 1 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec) mysql>

4.開啟工作管理員,停止mysql,mysqld進程,使用net start mysql啟動mysqld服務,就可以使用root使用者root密碼進入資料庫了

mysql -u root -p aaa

補充說明:

1.mysqld使用說明可以使用以下命令取得檢視:

##mysqld --verbose --help > d:\mysqld_help.txt

幫助中–skip-grant-tables的幫助為:

--skip-grant-tables Start without grant tables. This gives all users FULL ACCESS to all tables!

所以我們可以使用mysql -uroot而不用密碼直接登陸mysql,而且可以修改任何表。


本人實踐,用mysqld --skip-grant-tables啟動mysql,mysql -u root -p空密碼可以登錄,修改密碼也會提示成功,但是正常啟動mysql時,用新的密碼依舊無法登入。本人想到既然在中文網站找不到答案,就嘗試上國外的網站尋求答案。於是以mysql 5.6 forget root password為關鍵字搜索,在mysql.com上的一篇文檔」B.5.3.2 How to Reset the Root Password「【2】找到了答案。

具體操作步驟如下:

(1)停止mysql

如果以服務的方式運行,在服務管理工具停止mysql服務。或在控制台運行以下命令。

net stop mysql56

如果沒有以服務方式執行,在工作管理員裡終止mysqld進程。

(2)建立一個文字檔案寫入如下內容。 MyNewPass是新的密碼

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');

(3)儲存為c:\init.txt

(4)在控制台視窗執行以下命令

mysqld --init-file=C:\\init.ini

注意:

1)如果新增了MySQL的環境變量,則可以直接執行mysql相關命令,否則必須到mysql安裝目錄的bin目錄下操作

2)如果你是用Mysql安裝精靈安裝的Mysql,你需要加入--defaults-file參數,指令如下:

mysqld --defaults-file="C: \ProgramData\MySQL\MySQL Server 5.6\my.ini" --init-file=C:\\init.ini

--defaults-file參數可從服務管理取得:開始》控制台」管理工具》服務,找到MySql服務,點選右鍵,選擇屬性選項卡,「執行路徑」包含--defaults-file參數。

(5)系統啟動成功後,關閉Mysql,刪除init.ini檔案即可。

以上就是Window下Mysql忘記root密碼怎麼重置的圖文詳細介紹的內容,更多相關內容請關注PHP中文網(www.php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn