最近在使用MySQL的過程中,遇到了修改root密碼的問題。在網上查找了一些資料后,我采用了一種無密碼修改root密碼的方式。
首先,我進入了MySQL服務,輸入了以下命令:
mysql -u root
接著,我輸入了以下命令來修改root用戶的密碼:
use mysql; update user set password=PASSWORD("新密碼") where user='root'; flush privileges; quit;
然而,當我重新登入MySQL服務時,使用新密碼無法登入該服務,仍舊只能使用舊密碼登入。
于是我重新回到終端,輸入以下命令查看原因:
cat /var/log/mysqld.log | grep 'temporary password'
結果顯示:
[Note] A temporary password is generated for root@localhost: xxxxxxxxxx
這提示我,當我第一次進入MySQL服務時,已經生成了一個臨時密碼。
所以,我需要第一次登入MySQL服務時使用這個臨時密碼,并在第一次登入后進行root密碼的修改。
在重新嘗試后,我終于成功修改了root用戶的密碼。這里是正確的命令:
mysql -u root -p (在提示符后輸入臨時密碼) use mysql; update user set authentication_string=password('新密碼') where user='root'; flush privileges; quit;
經過這次嘗試,我了解到了無密碼修改root密碼的方法,以及遇到問題后的解決辦法。