寶塔數(shù)據(jù)庫管理密碼突然無效(成功解決)
寶塔數(shù)據(jù)庫管理密碼突然無效(成功解決)
這是個(gè)悲傷的故事,昨天下午到今天早上6點(diǎn)多才睡,工作了10來個(gè)小時(shí)。因?yàn)檫@幾年的庫存數(shù)據(jù)都丟了:(哭,頭皮一陣發(fā)麻。各種經(jīng)營數(shù)據(jù)-銷貨記錄、庫存記錄、幾千條貨物價(jià)格都沒了。感覺人生都灰暗了。
昨天下午 發(fā)現(xiàn)服務(wù)器管理密碼突然無效,管理不了數(shù)據(jù)庫了,無論怎么更改用戶名都無效了。就感覺不妙?。?/span>
然后嘗試強(qiáng)跳過密碼檢測(cè),行修改密碼Vim /etc/my.cnf。 添加mysqld --skip-grant-tables跳過密碼檢測(cè)登錄。跳過登錄系統(tǒng)后,各種update、setpassword語句都不成功, MySQL提示執(zhí)行了,但是沒有成功更新。
Vim /etc/my.cnf
啟動(dòng) service mysqld start
關(guān)閉 service mysqld stop
進(jìn)入MySQL mysql -uroot
語句執(zhí)行后沒有更新
也不能執(zhí)行賦權(quán)命令
靠,死循環(huán)了,最后測(cè)試用了phpmyadmin 可以登錄 然后 用sql 執(zhí)行
use mysql;
update user set authentication_string=PASSWORD(“root123”) where user=‘root’;
然后可以登錄了。
總計(jì):
問題應(yīng)該是從5.5 升級(jí)到了5.6.50,但是5.50 MySQL.user表里有2個(gè)空賬戶。導(dǎo)致鑒權(quán)不過。
期間經(jīng)歷了換數(shù)據(jù)庫版本。各個(gè)版本的數(shù)據(jù)文件一般可以向下兼容。有過被高版本數(shù)據(jù)庫,寫入以后高版本的數(shù)據(jù)庫是不能被低版本數(shù)據(jù)軟件的讀取的。所以版本由高到低的時(shí)候有幾個(gè)寫過的表就出問題了。
重點(diǎn):不知什么原因,跳過鑒權(quán)以后,過一段時(shí)間不能登錄。MySQL.user 表里面有2個(gè)空賬戶。動(dòng)數(shù)據(jù)的時(shí)候最好做備份。最好導(dǎo)出sql語句。