1、在介绍修改密码之前,先介绍一个文件/etc/mysql/debian.cnf.运行
- $ sudo vim /etc/mysql/debian.cnf
里面有一个debian-sys-maint用户,这个用户只有Debian或Ubuntu服务器才有,所以如果您的服务器是Debain或Ubuntu,debian-sys-maint是个Mysql安装之后自带的用户,具体作用是重启及运行mysql服务。所以如果忘了root密码,可以通过这个用户来重设密码。
2.使用这个文件中的用户名和密码进入mysql
mysql -u debian-sys-maint -p
然后输入文件中的password值,即可进入mysql。
3.选择mysql数据库(用户名和密码均存储在此数据库的user表中)
$ use mysql;
这时使用下列命令可以看到所有用户名和其所对应的密码
$ select user,authentication_string from user
利用update命令即可完成密码重设
update user set authentication_string=password('new password') where user='root';
还有最重要一步:
update user set plugin="mysql_native_password"
;
如果没这一行可能也会报一个错误,因此需要运行这一行
flush privileges
;
更新所有操作权限
> quit
;
检查是否成功