方法一:
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('000000') 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 password=password('123456') where user='root';