今天登陸服務器上的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