如何在ubuntu 16.04中恢复mysql密码

Kou*_*apu 4 mysql ubuntu

Mysql版本 - mysql Ver 14.14 Distrib 5.7.18,适用于Linux(x86_64),使用EditLine包装器.

我忘记了密码并在线尝试了很多命令.问题是授权表命令在我的终端中无法正常工作.

Wor*_*rik 12

~$ cat /etc/issue
Ubuntu 16.04.3 LTS \n \l

~$ aptitude show mysql-server |grep Version
Version: 5.7.20-0ubuntu0.16.04.1
Run Code Online (Sandbox Code Playgroud)

在文件中:/etc/mysql/debian.cnf是两个重要的行:

user     = debian-sys-maint
password = <unique password>
Run Code Online (Sandbox Code Playgroud)

使用该用户和密码登录mysql:以debian-sys-maint登录后,您可以:

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
Run Code Online (Sandbox Code Playgroud)


Pan*_*pta 0

1) 停止数据库服务器。 sudo systemctl stop mysql

2)不进行权限检查,重启数据库服务器。对于以下命令 sudo mysqld_safe --skip-grant-tables --skip-networking &

3)以root用户连接数据库 mysql -u root

4)更改root密码

FLUSH PRIVILEGES;

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
Run Code Online (Sandbox Code Playgroud)

5)正常重启数据库服务器

sudo kill `cat /var/run/mysqld/mysqld.pid`

sudo systemctl start mysql
Run Code Online (Sandbox Code Playgroud)

现在使用数据库中的新密码登录: mysql -u root -p

或者您可以点击以下链接:

https://www.digitalocean.com/community/tutorials/how-to-reset-your-mysql-or-mariadb-root-password