1. 程式人生 > >MySQL5.7忘記root密碼解決方法

MySQL5.7忘記root密碼解決方法

不輸密碼進mysql

  1. 檢查MySQL服務是否啟動,執行->services.msc,開啟服務,若該服務已啟動,將其停止;
  2. 對MySQL安裝目錄下的my.ini進行配置:
    MySQL5.7目錄下沒有my.ini檔案,可以在C:\ProgramData目錄下找到
    這裡寫圖片描述
    將檔案貼上在安裝目錄下
    這裡寫圖片描述
    在my.ini中[mysqld]下面新增skip-grant-tables來跳過許可權安全檢查;
    3.啟動MySQL服務;
    4.開啟cmd,進入bin目錄,輸入命令:
    mysql -u root -p
    這裡寫圖片描述
    正常情況下,這時按回車就可以不輸密碼進入mysql,接下來就可以修改密碼了。
    但博主親試還是出錯:
    MySQL ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
    若出錯,請按以下步驟:
    1.關閉MySQL服務;
    2.開啟cmd,進入bin目錄,輸入命令:
    mysqld –defaults-file=”C:\Program Files\MySQL\MySQL Server 5.7\my.ini” –console –skip-grant-tables (安裝目錄自行修改)
    命令跳過許可權安全檢查,開啟mysql服務,保留此cmd視窗
    3.開啟另一個cmd視窗,進入bin目錄,輸入命令:
    mysql -u root -p
    這時回車,登入成功
    這裡寫圖片描述

修改密碼

依次輸入命令:
1.use mysql;
2.update mysql.user set authentication_string=password(‘新密碼’) where user=’root’ and host=’localhost’;
3.flush privileges;
4.quit
密碼修改完畢。
將之前新增在my.ini中的欄位刪掉,重新使用mysql -u root -p登入時,要求輸入密碼。
若使用了cmd開啟mysql服務,將cmd視窗關閉後啟動MySQL服務,也可重新登入。