記Mysql8.0 無密碼模式登陸。


用某破解版程序,運行一段時間數據庫就被清空(哎,遭報應了),密碼被修改無法登陸。

之前也沒遇到過這個問題,第一次遇到問題以為是服務器出錯數據密碼錯誤了。之后重新安裝mysql,保留數據內容之后發現數據庫中的表不見了。

嗯,可能是服務器數據丟失了。那就重新安裝一次程序吧。

之后又用了兩個天又不能用了,出現了和第一次的狀況一樣。可能意識到情況比較嚴重。查看mysql日志最后發現有drop數據庫的操作。

額,密碼錯誤,數據庫被刪應該就是遭到盜取了。

不能每次都重新安裝數據庫吧。遂想修改密碼,還原數據。

網上的方法都是mysql5.7的方法,不適用於8.0。不過最終還是找到了可用的方法,現在紀錄下來。以備不時。

首先mysql8.0的安裝路徑和數據路徑是分開的。

運行無密碼模式:

停掉mysql數據庫服務。到mysql安裝目錄下bin 運行mysqld.exe 開啟無密碼模式的mysql服務

C:\Program Files\MySQL\MySQL Server 8.0\bin>mysqld.exe --defaults-file="C:\Progr
amData\MySQL\MySQL Server 8.0\my.ini" --skip-grant-tables --shared-memory

需要加載默認的ini文件 后面的 --skip-grant-tables --shared-memory 的作用和5.7的--skip-grant-tables 相同。

繼續到mysql安裝目錄下bin 運行

C:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -u root -p

可能會提示輸入密碼,直接回車即可。進入mysql 命令行管理程序。就可以修改密碼了。

我這里使用nactive把密碼修改成空的。不知道是不是我操作的問題網上的5.7的重置密碼方法無效。只把密碼設置為空。到任務管理器關閉mysql程序。啟動mysql服務用nactive再次修改密碼。

有了兩次的教訓。這次單獨為數據庫建立一個登陸賬號,去掉表的刪除權限,防止在被刪除吧。看看還會不會修改表結構。不行再把修改表去掉

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM