MYSQL ERROR 1045 (28000): Access denied for user (using password: YES)

安裝mysql後,有的用戶既想在本地訪問,又想遠程訪問。

mysql -h host -uroot -ppassword 出現錯誤:

MYSQL ERROR 1045 (28000): Access denied for user (using password: YES)

這是因爲你沒有進入mysql的權限,你的主機沒有在mysql的user表裏存儲,或者用戶名或者密碼不正確。

1.跳過授權,進入mysql:

mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

2.賦予足夠的權限

grant all privileges on *.* to 'root'@'%' with grant option;

將權限導入內存,可以不用重啓mysql來查看是否正確執行權限

flush privileges;

3.重新配置用戶密碼

>use mysql

>UPDATE user SET Password=PASSWORD('newpassword') where USER='root';

4.sudo service mysql restart

成功。這樣就既可以從內網又可以從外網訪問數據庫了。

附:

如果user表裏沒有記錄,就得手動添加:

INSERT INTO user(host, user, password, select_priv, insert_priv, update_priv) VALUES ('localhost', 'username', PASSWORD(‘yourpassword'), 'Y', 'Y','Y'); 

註釋/etc/mysql/my.cnf裏的記錄

bind-address =127.0.0.1

發佈了55 篇原創文章 · 獲贊 31 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章