1. 程式人生 > >MySQL錯誤號碼1862:your password has expired

MySQL錯誤號碼1862:your password has expired

因為是好久沒有用mysql,然後隔了三個多月再次登入就出現了以上問題,嗯嗯,從來不太會用命令列的我,在QQ群裡求助,最終迷迷糊糊的解決了。。。。反正記錄一下希望對大家有幫助吧,我到現在也迷迷糊糊的。

我是win8的系統。

1):win+R,執行裡輸入services.msc開啟服務,關閉MySQL57服務(57是我的MySQL Server的版本號)

2):win+R。執行中輸入cmd,cd C:/Program Files/MySQL/MySQL Server 5.7/bin回車進入bin目錄下面,然後 mysqld --defaults-file="C:/ProgramData/MySQL/MySQL Server 5.7/my.ini"  --skip-grant-tables

一定是my.ini,我一開始找到Program Files下面的my-default.ini去了,可以再服務中右擊屬性檢視一下,就是這個。

這句話貌似是在命令視窗中開了一個mySQL的服務,該命令通過跳過許可權安全檢查,開啟mysql服務,這樣連線mysql時,可以不用輸入使用者密碼。


3):win+R,新開一個cmd視窗,原來的別關了呀。

輸入命令:

mysql -uroot -p

出現:

Enter password:

在這裡直接回車,不用輸入密碼。

然後就就會出現登入成功的資訊。

然後在這裡登SQLyog就可以登進去了耶

4)更改密碼(在SQLyog裡面):update mysql.user set password=password("123456") where user='root';

5)反正後面就是>mysql -uroot -p123456命令列中可以登入進去,但是SQLyog還是不行,後面又查了資料:

都關閉了之後,服務中將MySQL57服務開啟

執行視窗中進入bin目錄,>mysql -uroot -p123456登入進去,然後執行select * from mysql.users

會有如下資訊:ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

解決:mysql> SET PASSWORD = PASSWORD('123456');

          Query OK, 0 rows affected (0.03 sec)

然後再select * from mysql.users就有結果了。

然後再SQLyog就登入進去了。

我的反正就好了,不知道怎麼就好了呢,還有QQ群友遠端協助來著:ありがとうございました。

嗯嗯,僅作參考吧。想想我大概想了十幾回要解除安裝重灌,但是最後也只是將SQLyog解除安裝重灌了四次or五次?呵呵,解除安裝MySQL會比較麻煩吧,有問題還是努力去解決的好吧。加油!

參考資料:
1).http://www.cnblogs.com/andy_tigger/archive/2012/04/12/2443652.html
2). http://www.jb51.net/article/39187.htm

相關推薦

no