MySQL错误:access denied for user 'root'@'localhost' using password yes的问题

本来mysql运行得好好的,修改了一次root密码,貌似没成功,当时也没在意,mysql也没出问题。到了第二天,启动时报了这个错误“access denied for user 'root'@'localhost' using password yes”。网上解决的方法很多,试了几个都不行,下面就贴出自己实践成功后的方法,

以下内容根据论坛“http://topic.csdn.net/u/20090515/21/2b3c9a12-d8a5-4bb1-9895-6069cef5aef8.html”整理,使得解决方法有个更清晰的步骤.

1.停止Mysql的服务:c:\>sc stop mysql(net stop mysql/net start mysql)

2.首先进入windows命令行模式,本人的mysql安装在D盘,切换到mysql bin目录下。命令格式如下:cd D:/mysql/bin

然后敲下面的粗体的命令。注意你的my.ini位置。

D:/MySQL\bin>mysqld  --defaults-file="D:\MySQL\\my.ini" --console --skip-grant-tables
090515 22:06:09 [Warning] The syntax '--log' is deprecated and will be removed i
n MySQL 7.0. Please use '--general_log'/'--general_log_file' instead.
090515 22:06:09 [Warning] The syntax '--log_slow_queries' is deprecated and will
 be removed in MySQL 7.0. Please use '--slow_query_log'/'--slow_query_log_file'
instead.
090515 22:06:09 [Warning] The syntax '--log' is deprecated and will be removed i
n MySQL 7.0. Please use '--general_log'/'--general_log_file' instead.
090515 22:06:09 [Warning] The syntax '--log_slow_queries' is deprecated and will
 be removed in MySQL 7.0. Please use '--slow_query_log'/'--slow_query_log_file'
instead.
090515 22:06:09 [ERROR] The update log is no longer supported by MySQL in versio
n 5.0 and above. It is replaced by the binary log. Now starting MySQL with --log
-bin='' instead.
090515 22:06:09  InnoDB: Started; log sequence number 0 324221
090515 22:06:09 [Note] mysqld: ready for connections.
Version: '5.1.33-community-log'  socket: ''  port: 3306  MySQL Community Server
(GPL)

看到这个结果就说明MySQL已经起来了。

3.再打开一个dos窗口,同样切换到bin目录下

D:\MySQL\bin>mysql -uroot mysql  显示结果如下:

Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 2  
Server version: 5.1.33-community-log MySQL Community Server (GPL)  
  
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.  

4.继续下面这个步骤,输入:

mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';    
mysql> FLUSH PRIVILEGES;    
mysql> quit    
 
进入到mysql的bin路径,输入D:\mysql\bin>mysql -uroot -p
enter password:“新密码”
密码设置成功。

猜你喜欢

转载自xjx.iteye.com/blog/1913516