1. vi /etc/my.cnf,在[mysqld]中添加
    skip-grant-tables
    例如:
    [mysqld]
    skip-grant-tables
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
  2. 重启mysql
    service mysql restart
  3. 使用用户无密码登录
    mysql -uroot -p (直接点击回车,密码为空)
  4. 选择数据库
    use mysql;
  5. 修改root密码
    update user set authentication_string=password('123456') where user='root';
    注意:mysql8.0以上版本需要新的语句才能修改成功,如下:
    alter user 'root'@'localhost' identified by 'MyNewPass@123';
    6 .刷新权限
    flush privileges;
    7 .退出
    exit;
    8 .删除第1部增加的配置信息
    skip-grant-tables
    9 .重启mysql
    service mysql restart