MySQL错误-没法登陆问题解决

今天登陆服务器上的MySQL数据库,出现错误,提示以下mysql

<!-- lang: shell -->
ERROR 1045 (28000): Access denied for user

在网上搜索最经常使用的解决方法是使用mysqladmin进入控制台后,再修改root帐号的密码。可是用mysqladmin登陆也出现一样的错误时,只能用MySQL的安全模式启动后,使用空密码登陆到MySQL服务器再修改密码才能解决,步骤以下:sql

<!-- lang: shell -->
# /etc/init.d/mysqld stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking
# mysql -u root mysql

这样就能登陆到MySQL的命令行了,再修改root帐号的密码shell

<!-- lang: shell -->
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’;
mysql> FLUSH PRIVILEGES;
mysql> quit

再用正常模式启动,登陆mysql数据库

<!-- lang: shell -->
# /etc/init.d/mysql restart 
# mysql -u root -p
相关文章
相关标签/搜索