今天登陆服务器上的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