1. 程式人生 > >MySQL報錯:ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

MySQL報錯:ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

原因:mysql資料庫的user表裡,存在使用者名稱為空的賬戶可以視為匿名賬戶,導致登入的時候是雖然輸入的是root,但實際用匿名登入的;

解決辦法:

在my.cnf的[mysqld]欄位加入:
skip-grant-tables
重啟mysql服務,然後進入mysql
mysql>use mysql;
mysql>update user set password=password(‘新密碼’) WHERE User=’root’;
mysql>flush privileges;
執行之後最後去掉my.cnf中的skip-grant-tables,重啟mysqld即可。

方法二:也可能是許可權問題,可以重新安裝下MySQL