方法一:
1):编辑mysqld.cnf文件
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
2):在文件中的skip-external-locking一行的下面添加一行:
skip-grant-tables
3):重启MySQL服务
sudo service mysql restart
4):终端输入mysql进入MySQL,输入USE mysql切换至mysql数据库
mysql
USE mysql
5):把root用户的密码修改为000000
UPDATE mysql.user SET authentication_string=password('') WHERE User='root' AND Host ='localhost';
6):修改字段plugin
UPDATE user SET plugin="mysql_native_password";
7):
flush privileges;
8):退出
quit;
9):注释掉/etc/mysql/mysql.conf.d/mysqld.cnf文件中添加的一行
方法二:利用mysql自带的用户debian-sys-maint进行重置密码,只有Debian或Ubuntu服务器才有,存在于/etc/mysql/debian.cnf文件中
1):打开/etc/mysql/目录下的debian.cnf文件,里面包括用户名和密码
sudo vim /etc/mysql/debian.cnf
2):使用文件中提供的用户名和密码进入mysql
mysql -u debian-sys-maint -p
3):选择mysql数据库
use mysql;
4):更新root用户的密码为123456
update user set authentication_string