用php的時候不小心在phpAdmain里把root的密碼給改了,而php用的加密算法估計與mysql用的不是一個,導致再進入mysql的時候總是說密碼錯誤。在網上看了好多關於忘記mysql密碼的帖子,可能針對不同的情況解決方法上略有差異,不能只看一種說法。針對我這種情況,我是這樣解決的:
1.打開cmd命令行,輸入 net stop mysql
停止當前的mysql服務。
2.跳到mysql安裝目錄下的bin目錄下,輸入 mysqld --skip-grant-tables
意思是現在可以不用密碼登錄了。
第一種方法:這時候可以打開mysql的命令行端,打開后是這樣:
這時候不用輸入密碼就可以進去。對mysql數據庫的user表的root用戶輸入修改命令就可以了。不過我試着這種方法總是不好用,即便修改了,還是不能進去。
第二種方法:針對安裝了SQLyog的用戶,有了這個可視化界面,一切的操作都變得簡單了。直接用這個工具打開MySQL數據庫,找到mysql庫下的user表,查看表數據可以看到所有用戶的情況,由於對用戶密碼都是進行加密了的,所以不要再表里直接改密碼,那樣還是進不去。先把root的密碼刪了,這樣以后不用再敲入“mysqld --skip-grant-tables”命令也可以不用密碼登錄,但是這樣不安全,所以還是要有密碼。在SQLyog中這樣操作:
單擊工具欄中上面紅圈中的圖標,打開用戶管理對話框:
在這里直接在password框和它右邊的框中輸入同樣的你想要修改的密碼后保存就行了。這時候再打開user表就可以看到加密后的密碼的一串字符串啦。
接下來也是很重要的一個步驟,再次打開cmd命令行,輸入 net stop mysql,關閉現在不用密碼就能登錄的狀況。然后再輸入net start mysql啟動服務就哦啦。
希望能幫到跟我一樣狀況的朋友。