重置密码

5.7之前版本

# 修改配置文件
$ vim /etc/mysql/my.cnf
skip-grant-tables   # 在[mysqld]范围内添加,跳过权限验证
# 重启服务
sudo systemctl restart mysqld
# 登录数据库
mysql -uroot -p
# 修改密码
mysql> use mysql;
mysql> update user set authentication_string=password('your_new_passwd') where user='root';
mysql> flush privileges;

# 注释skip-grant-tables
$ vim /etc/mysql/my.cnf
#skip-grant-tables
# 重启服务
sudo systemctl restart mysqld

注:your_new_passwd更换为你的密码

8.0版本

# 配置文件添加
$ vim /etc/mysql/my.cnf
skip-grant-tables
# 重启服务
systemctl  restart mysqld
# 登录数据库
mysql -uroot -p
# 删除密码
use mysql;
UPDATE user SET authentication_string="" WHERE user="root";
# 注释skip-grant-tables
# 重启服务
systemctl  restart mysqld
# 登录数据库
mysql -uroot -p
# 修改密码
use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_new_passwd';
flush privileges;

注:your_new_passwd更换为你的密码