不管在安装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 ′ ; / / ′ a d f a s 555 @ 33 '; //'adfas555@33 ′;//′adfas555@33’ 自己根据情况设定密码,建议复杂点,别太简单会报错-mysql8啊,真坑。
至此就完事啦