Command-Line

從 mysql CLI 更改 root mysql 密碼失敗

  • December 4, 2017

考慮以下程式碼:

UPDATE user set password=PASSWORD('NEWPASSWORD_CAME_HERE') WHERE User='root';

寫的地方NEWPASSWORD_CAME_HERE我已經把我的密碼(在引號之間)。

然而,當我執行這個查詢時,我得到了這個錯誤:

錯誤 1046 (3D000): 未選擇數據庫

為什麼會出現這個錯誤?,我遵循了不同的指南,這是我見過的最傳統的方式,所以我不明白為什麼它失敗了。

首先,您必須在 UPDATE 語句中指定數據庫,而不僅僅是表:

UPDATE mysql.user ...

否則 MySQL 無法知道您在哪個數據庫上執行(因此出現錯誤)。

但是,這不是在 MySQL 中更改使用者密碼的正確方法。不建議擺弄mysql數據庫(包含數據庫元數據)。改為這樣做:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('NEWPASSWORD_CAME_HERE'); 

解決您的錯誤: use mysql

但是你應該看看mysql參考手冊:

ALTER USER user IDENTIFIED BY 'auth_string';

設置密碼語法

引用自:https://unix.stackexchange.com/questions/408656