最近安裝mySQL5.7.16,發現安裝完后會自動生成一個隨機密碼,然后用sql工具登錄,發現這個密碼已經過期了,不能登錄。
處理步驟:
1.先關閉MySQL服務:系統偏好-MySQL-關閉;
2.進入終端,輸入指令:cd /usr/local/mysql/bin/,進入安裝目錄;
3.輸入指令:sudo su,切換到root用戶;
4.輸入指令:./mysqld_safe --skip-grant-tables &,禁止mysql驗證功能。運行命令后mysql服務會自動重啟;
5. 工具(如Navicat)登錄MySQL。配置的時候,只輸入用戶名為root,密碼不用輸。6. 登錄進去以后,數據庫選擇mysql,修改user表下用戶名為root的那條記錄,將password_expired設為N。這樣隨機密碼就有效了,可以用密碼登錄了。
如果希望修改root密碼,則在登錄mysql后,執行下面兩條sql即可(注意此處root就是你要修改的密碼):
update mysql.user set authentication_string=password('root') where user='root' and Host = 'localhost';
flush privileges;