今天部署阿里雲服務器, 發現之前可以連接的mysql服務器突然連接不上了, 密碼我確認是正確的,但登錄時就是顯示密碼錯誤, 很崩潰, 差點氣得我就想重裝mysql了。
好在經過幾番苦尋找到了以下能解決我問題的資料, 成功解決了我的問題, 萬分感謝, 便借鑒過來,保存備忘!
原文地址: https://blog.csdn.net/qq_33142257/article/details/71375029
這個問題其實說到底就是權限問題,但是一開始不清這個,導致繞了很大的一個圈子,現在終於弄清楚了;主要就涉及到一張表,mysql庫中的user表;提供兩種解決辦法
方法一、直接用客戶端連接,到mysql的user表中將其中一條user為root的記錄的host改成localhost,然后保存就好了;到shell找那個重啟mysql,然后再次通過shell登錄的時候需要輸入密碼;
如圖:
方法二:
先關閉mysql服務:
然后通過安全模式在后台啟動mysql 命令./mysqld_safe --skip-grant-tables & ,然后進入mysql,到mysql庫 :
執行插入語句:
sql語句:
INSERT INTO `user`
VALUES
(
'localhost',
'root',
password('123456'),
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'Y',
'',
'',
'',
'',
'0',
'0',
'0',
'0'
);
最后重啟mysql服務,這個時候一般通過命令關閉服務是關不了的,直接將進程殺掉后啟動;