2017-09-13 271 views
1

(對不起,我的英語)拒絕訪問用戶'root'@'localhost'(使用密碼:否) - 出現了什麼問題?

這是日誌我的控制檯:

[email protected]:~$ mysql -u root 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 
[email protected]:~$ mysql -u root -p 
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 

我該怎麼辦?我瞭解到,當我嘗試輸入沒有密碼時,但我沒有確認密碼,而'root'/空字符串沒有幫助。

+0

您應該指定正確的密碼:p這是全新安裝嗎? – fancyPants

+0

試密碼爲** **根 –

+0

@ArunVitto已經嘗試過: 安東@安東X451CA:〜$ mysql的-h本地主機ü根 - P 輸入密碼: ERROR 1045(28000):拒絕訪問用戶'root'@'localhost'(使用密碼:YES) –

回答

1

當你安裝了這個新鮮的,你平時執行

mysql_secure_installation 

之後。在那裏你還爲你的root帳號設置了初始密碼(注意,這不是你在Linux中擁有的root帳號)。

當您安裝版本5.7。或更高,初始密碼不再空白。你可以在錯誤日誌中找到它。通過查看my.cnf文件來查找此日誌。我想,默認目錄是/var/log/mysql

+0

好吧,我輸入了mysql_secure_installation,結果是: 確保MySQL服務器部署安全。 輸入用戶root的密碼: 錯誤:訪問被拒絕用戶'root'@'localhost'(使用密碼:是) 我嘗試了'root'和密碼字段中的空字符串 - 結果相同。 –

+0

你讀過我的答案的其餘部分了嗎?密碼可以在錯誤日誌中找到。 – fancyPants

+0

我在/etc/mysql/my.cnf中發現了my.cnf文件,裏面有文件內容: https://pastebin.com/CieqCgDW 我沒有看到什麼東西可以給我一個提示。 –

3

我解決了這個問題,當:

更改文件my.cnf中(在我的Ubuntu系統,他被放置在/etc/mysql/my.cnf)。最後我補充說,代碼:

[mysqld] 
skip-grant-tables 

這有助於進入吊帶,因爲任何用戶沒有通過。重新啓動服務器: sudo的服務mysql的重啓

在mysql控制檯輸入:

mysql -u root 

更改密碼root用戶:

UPDATE mysql.user SET authentication_string=PASSWORD('root'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';FLUSH PRIVILEGES; 

退出控制檯:

\q 

刪除(或使用評論)爲my.cnf(我們不需要s現在ettings):

#[mysqld] 
#skip-grant-tables 

重啓MySQL服務器:

​​

這就是全部。 :)

相關問題