昨天学习正在使用mysql,当时也是在命令窗口修改了密码,谁知道晚上回到房间再次登录mysql时出现错误提示:
Error: Access denied for user ‘root’@’localhost’ (using password: YES)
重启了N次mysql和电脑,还是一点用都没有,网上搜索了好多看的眼花缭乱,最后总和下来这种方法还是最有效果,也能处理大多数这种问题;
1、以管理员身份打开window的命令窗口并进入到mysql的bin目录下,我的mysql在D盘根目录,下面粗体字就是我敲的命令,大家可以输入粗体命令:
D:\MySQL\bin>mysqld –defaults-file=”C:\Program
Files\MySQL\MySQL Server 5.1\my.ini” –console –skip-grant-tables
如果出现一堆类似下面这种代码,
090515 22:06:09 [Warning] The syntax ‘–log’ is deprecated and will be removed in MySQL 7.0. Please use ‘–general_log’/’–general_log_file’ instead.
说明这个过程是正确的,然后重新打开一个命令窗口,刚才那个不要关闭,同样进入到mysql的bin目录,输入下面粗体代码:
D:\MySQL\bin>mysql -uroot mysql
出现下面一堆代码表示这过程暂时OK
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.
接着继续在这个窗口输入下面命令:
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’;
mysql> FLUSH PRIVILEGES;
mysql> quit
操作就行。update完表后,退出
D:\MySQL\bin>mysqladmin shutdown
然后正常启动mysql就OK了。