不管在安裝mysql還是mysql使用過程中忘記密碼,都闊以用該方法進行解決:
情況1:安裝後登陸mysql提示:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO),導致無法登陸
情況2:忘記密碼。
解決方法:
1-在配置文件my.cnf中添加skip-grant-tables,配置文件一般在etc目錄下。
輸入:vi /etc/my.cnf
然後添加:skip-grant-tables
如圖:
保存該文件。
2.然後命令重啓mysql:
systemctl restart mysqld;
這樣就可以無密碼進入mysql了。
3-直接輸入mysql:
進入mysql後:
4-分別進行如下命令:
show databases;
user mysql;
//將密碼置空,記住,這裏別填其他值,因爲你不知道mysql的加密方式。。在這裏踩了半天坑了
update user set authentication_string = ‘’ where user = ‘root’;
5 去除免密碼登陸
刪掉之前添加的語句 skip-grant-tables
重啓服務 systemctl restart mysqld
6-修改密碼
mysql -u root -p //提示輸入密碼時直接敲回車,剛剛已經將密碼置空了
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘adfas555@33’ 自己根據情況設定密碼,建議複雜點,別太簡單會報錯-mysql8啊,真坑。
至此就完事啦