mysql: 1045 access denied for user 'root'@'localhost' using password yes

原因是:root的密码错误了。

解决思路:关闭mysql服务,重新启动mysql服务,启动mysql的时候,指定不需要校验密码。然后登陆mysql,修改密码,退出。再重新启动mysql服务。

1、关闭mysql

2、启动mysql,指定不需要校验密码

C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqld --defaults-file="C:\Program
Files\MySQL\MySQL Server 5.1\my.ini" --console --skip-grant-tables

3、再开一个窗口,root登陆,修改密码

C:\Program Files\MySQL\MySQL Server 5.1\bin>mysql -uroot mysql   (解释: -uroot mysql    后面这个mysql指的是连接到mysql库,因为跳过权限验证,所以这时候可以不用密码就可以登录mysql)
mysql>

mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root'; 
mysql> FLUSH PRIVILEGES; 
mysql> quit 

 4、再重新启动mysql

 

linux下面,找到/usr/libexec ,执行 mysqld --skip-grant-tables;

posted on 2015-03-02 15:05  Andy Niu  阅读(1100)  评论(0编辑  收藏  举报