忘記MySQL資料庫root密碼,使用安全模式巧妙重置密碼

耕耘實錄發表於2017-12-29

忘記MySQL的root登入密碼這種事情還是會發生的,很不幸,這事今天被我遇到了,頓時不知道怎麼辦了!百度了好一陣,上面的各種方法都使用了一遍,還是不奏效!可能是老辦法對於新版的MySQL已經不奏效了!在這裡不得不吐槽一下坑爹的百度!不過這些資料還是有用的,結合這些資料,再經過的自己的思考,終於弄出瞭解決方案。

一、查詢mysql程式,找到2個程式,全部kill了。

[root@mysql bin]# ps -ef |grep mysqld
[root@mysql bin]# kill 4702
[root@mysql bin]# kill 4960

二、進入安全模式。

[root@mysql ~]# cd /usr/local/mysql/bin/
[root@mysql bin]# ./mysqld_safe --skip-grant-tables &

三、無密碼進入資料庫。輸入以下命令,直接按Enter鍵進入MySQL資料庫。

[root@mysql bin]# mysql -u root -p
Enter password: 

四、修改密碼。

mysql> use mysql;
mysql> update user set authentication_string=`*1DC567F0B76FD458616E892F7340D3C02E69BC70` where user=`root`;
mysql> flush privileges;
mysql> quit;

字串“*1DC567F0B76FD458616E892F7340D3C02E69BC70”的明文密碼為:”Geeklp-mysql”,下次登入時使用這個密碼即可成功登入。可以直接複製這個更新語句,也可以從別的庫複製自己知道明文密碼的欄位。

五、退出,重新使用新密碼登入資料庫,如需自定義密碼按照正常修改密碼流程進行操作!所以步驟全部完成!

mysql> set password=password("Geeklp-mysql");
mysql> flush privileges;
mysql> quit;


相關文章