错误1045(28000):访问拒绝用户'root'@'localhost'(使用密码:是)

我的局域网中有一台服务器在我的房间里。 我只是重新启动我的服务器,现在当我尝试连接到MySQL我得到以下错误信息

mysql -u root -p -h localhost Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 

我没有改变任何设置,据我所知,能够login和出,直到我重新启动我的电脑。 有什么build议? 我知道这个相同的错误信息已经报告在stackoverflow和serverfault,但在Q / A的我读他们不连接到本地主机。

程序大致相同; 以安全模式重新启动MySQL以root身份login并且没有密码并执行密码重置。 从那里做数据完整性检查。

以下是我遵循的解决此问题的步骤列表( http://24x7servermanagement.com/blog/?p=44

 #service mysqld stop or #killall mysqld #/usr/bin/mysqld_safe –skip-grant-tables& #/usr/bin/mysql mysql>use mysql; 

使用以下命令更改MySQLpipe理员(root)密码

mysql>update user set password=password('wsarxaffa') where user='root' and host='localhost';

刷新权限,这样一切都将(取消服务器设置的任何权限)

 mysql>flush privileges; mysql>quit /etc/init.d/mysqld stop /etc/init.d/mysqld start mysql -u root -p 

我在ubuntu上遇到了这个问题。 在我的情况下,原因是/ tmp文件夹不可访问,并且安装过程在创buildroot用户时失败了。 我会卸载MySQL,给/ tmp权限,然后重新安装MySQL。

请参考http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=545741

我已经看到这发生在mysql已经升级,授予表已更新。

我会运行/usr/bin/mysql_upgrade (或者你的系统上的任何path)来解决这个问题。

mysqld需要运行。

经过3天的尝试,我意识到有一个在Win(x64)的MySQL网站上的扩展。 它为我工作。 从原始安装程序的bin文件夹中排除所有文件,并从扩展名中复制文件。