1. 進入MySQL安裝的文件夾,打開my.ini配置文件,打開方式參考:https://www.cnblogs.com/leslie12956/p/11842956.html
2. 停止MysSQL服務

3. my.ini 文件添加命令 mysqld --skip-grant-tables, 該命令指在數據庫啟動的時候 跳躍權限表的限制,不驗證密碼,直接登錄。

4. 啟動mysql服務,提示無法啟動,原因是mysql配置文件默認是ANSI編碼格式,修改時保存成了utf-8格式

5. 修改my.ini文件為ANSI編碼格式,保存,點擊啟動服務,還是啟動失敗

6. 原因:在my.ini中加入skip-grant-tables在mysql8.0中已失效。Mysql 8.X的方法是在命令行中使用mysqld --console --skip-grant-tables --shared-memory啟動服務器然后root就可以免密登錄了
使用mysqld --console --skip-grant-tables --shared-memory啟動服務器,報找不到data目錄

7. 解決辦法:命令行執行 mysqld --initialize-insecure --user=mysql

8. 再次運行 mysqld --console --skip-grant-tables --shared-memory

10.無密碼登入 mysql -uroot 回車確定。就登陸了系統。

11. 如需再輸入密碼,可用以下語句設置
12.使用數據庫 use mysql
14.刷新密碼 update mysql.user set authentication_string=password('root') where user='root' ;
14.刷新權限,執行 flush privileges;
