MySql教程

ubuntu系统下mysql 8重置root密码

本文主要是介绍ubuntu系统下mysql 8重置root密码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

忘记mysql的root密码是很正常的一件事情,但是想要重置root用户的密码却不简单,此处是ubuntu下重置密码的一种方式,亲测有效;

在介绍修改密码之前,先介绍一个文件/etc/mysql/debian.cnf.其主要内容如下图:在这里插入图片描述
里面有一个debian-sys-maint用户,这个用户只有Debian或Ubuntu服务器才有,所以如果您的服务器是Debain或Ubuntu,debian-sys-maint是个Mysql安装之后自带的用户,具体作用是重启及运行mysql服务。所以如果忘了root密码,可以通过这个用户来重设密码。

重置的具体操作步骤如下:

  1. 进入/etc/mysql/目录,并用root权限打开debian.cnf文件
> cd /etc/mysql
> sudo vim debian.cnf
  1. 使用这个文件中的用户名和密码进入mysql
> mysql -u debian-sys-maint -p

然后输入文件中的password值,即可进入mysql。

  1. 选择mysql数据库(用户名和密码均存储在此数据库的user表中)
> use mysql;
  1. 显示user表中的列
>show fields from user;  或者(describe user;)

authentication_string这列代表的就是密码(注:mysql8以前的版本这个字段是password)

  1. 修改密码
update user set Host='%' where User='root';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

注意此处,使用了关键字mysql_native_password,使用password(‘123456’)的方式貌似不行,因为password函数是mysql8之前支持的方式。

这篇关于ubuntu系统下mysql 8重置root密码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!