MySql 服务器无法识别正确的密码

Sam*_*Sam 5 server mysql 14.04

我已经在 Ubuntu 14.04 LTS 上安装了 MySql 服务器。我也有这方面的经验。

但是每当我登录,使用mysql -u root -p和输入密码后,它都会说:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Run Code Online (Sandbox Code Playgroud)

我输入了正确的密码。几天前发生了同样的事情,但后来我完全删除了 mysql 并重新安装了它。

我也尝试重新启动 mysql 服务器,但没有帮助!

有人可以帮忙吗?

And*_*ers 4

请务必阅读已安装的软件包的/usr/share/doc/软件包名称的内容。/它们包含使用和管理包的重要信息。

所以因为mysql-server-5.5里面有重要的信息/usr/share/doc/mysql-server-5.5/README.Debian.gz。由于是gzipped的,用起来很方便zmore

在那里您可以看到您可以使用该debian-sys-maint用户访问数据库进行管理。就像root使用/etc/mysql/debian.cnf配置文件以该用户身份登录一样。请注意,您永远不应该更改该用户密码,除非您也在文件中更改了它debian.cnf。如果没有,mysql将停止工作。

因此,要更改root用户的密码,请尝试此操作。

$ sudo mysql --defaults-file=/etc/mysql/debian.cnf
mysql> UPDATE mysql.user SET Password=PASSWORD('*secret*') WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> quit;
$ mysql -u root -p
Run Code Online (Sandbox Code Playgroud)

如果您可以使用该*secret*密码以用户身份登录root,则您已成功更改 的密码root

请注意,这种用户使用方式debian-sys-maint仅适用于基于 Debian 的发行版。

另请注意,如果您还dbconfig-common安装了该软件包并设置为存储root密码(请参阅 参考资料/etc/dbconfig/config),那么您需要重新配置该软件包,以便它知道管理其他软件包的数据库的密码。

最后,好的信息也可以在Debians Wiki和免费的系统管理员书籍中阅读