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