天天看點

centos6.5下mysql無法登陸的問題

    在操作mysql是可能會出現無法登陸的問題,其中最常見的錯誤就是,ERROR 1045,如圖所示的錯誤:

<a href="http://s1.51cto.com/wyfs02/M02/80/09/wKiom1c1H8XQJIS1AACZBk6-RhM694.jpg" target="_blank"></a>

   這種錯誤産生的原因有兩種:1、密碼錯誤;2、使用者名不正确。網上給出的方法一般是進入安全模式,修改密碼。具體操作方法是:

    # /etc/init.d/mysql stop 

    # mysqld_safe --user=mysql --skip-grant-tables --skip-networking &amp; 

    # mysql -u root mysql 

    mysql&gt; UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; 

    mysql&gt; FLUSH PRIVILEGES; 

    mysql&gt; quit 

    # /etc/init.d/mysql restart 

    # mysql -uroot -p 

    Enter password: &lt;輸入新設的密碼newpassword&gt; 

    mysql&gt;

但是有時依然無法登入,得到的結果還是:

    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

此時就要思考是否使用者名錯誤的原因了,安全模式再次登入使用者,檢視目前系統的使用者:

    # mysql -u root mysql

<a href="http://s5.51cto.com/wyfs02/M00/80/06/wKioL1c1Iv-hBC6DAAFHIaiW_c8726.jpg" target="_blank"></a>

發現使用者清單中沒有localhost這個主機名,此時更改主機名;

      mysql&gt; UPDATE user SET Host='localhost' WHERE Host='mylinux';

      mysql&gt; UPDATE user SET Host='localhost.localdomain' WHERE Host='mylinux2';

<a href="http://s5.51cto.com/wyfs02/M02/80/06/wKioL1c1I63RbdMZAAEBkXDX9YE048.jpg" target="_blank"></a>

退出後,重新開機mysql服務,重新登入就會發現可以登陸了!

<a href="http://s1.51cto.com/wyfs02/M00/80/09/wKiom1c1I0HhoIokAAGXHhoLxH4358.jpg" target="_blank"></a>

本文轉自 夢想成大牛 51CTO部落格,原文連結:http://blog.51cto.com/yinsuifeng/1772918,如需轉載請自行聯系原作者

繼續閱讀