mysql忘记密码

方法一

  • 编辑mysqld.cnf文件

    sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
    
  • 在文件中的skip-external-locking一行的下面添加一行

    skip-grant-tables
    
  • 重启MySQL服务

    sudo service mysql restart
    
  • 终端输入mysql进入MySQL

    mysql
    
  • 输入USE mysql切换至mysql数据库

    use mysql
    
  • 把root用户的密码修改为

UPDATE mysql.user SET authentication_string=password('root') WHERE User='root' AND Host ='localhost' 
  • 修改字段plugin

    UPDATE user SET plugin="mysql_native_password" 
    
    flush privileges ]
    
  • 退出

      quit
    
      注释掉/etc/mysql/mysql.conf.d/mysqld.cnf文件中添加的一行 
    

方法二
利用mysql自带的用户debian-sys-maint进行重置密码,只有Debian或Ubuntu服务器才有,存在于/etc/mysql/debian.cnf文件中

  • 打开/etc/mysql/目录下的debian.cnf文件,里面包括用户名和密码

    sudo vim /etc/mysql/debian.cnf
    
  • 使用文件中提供的用户名和密码进入mysql

    mysql -u debian-sys-maint -p
    
  • 选择mysql数据库

    use mysql
    
  • 更新root用户的密码为root

    update user set authentication_string=password('root') where user='root';

你可能感兴趣的:(mysql忘记密码)