Total Pageviews

Wednesday 10 October 2012

如果你遇到error: 'Access denied for user 'root'@'localhost' (using password: NO)'

如果你想登录mysql控制台,输入mysql -u root -p回车,遇到错误:
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
解决办法:mysqladmin -uroot -poldpassword password newpassword 
 然后输入 mysql -uroot -pnewpassword 回车即可登录mysql控制台。
(建议把u和root连在一起写)
 
以上是记得旧密码时的操作办法。
 ----------------------------------------------------------------------
如果不记得旧的mysql密码了,重置mysql密码的方法如下:
Linux下,运行 killall mysqld

以安全模式启动MySQL,
Linux下,运行 /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &或者
mysqld_safe --skip-grant-tables &

完成以后就可以不用密码(即空密码)进入MySQL了。
Linux下,运行 /usr/local/mysql/bin/mysql -u root -p 或者mysql -u root -p
会提示enter password:
因为是空密码,所以回车即可进入mysql console.
更改MySQL数据库密码,
mysql>use mysql;  
mysql>update user set password=password("新密码") where user="root";   
mysql>flush privileges;  
mysql>exit;

# /etc/init.d/mysql restart
# mysql -u root -p
回车,输入root用户的新密码,即可登录mysql console.
(或者运行# mysql -uroot -pnewpassword
回车,即可直接登录mysql console.)