MySQL8 0修改密碼問題

2021-10-25 20:15:29 字數 1159 閱讀 1172

mysql5.7和之前的使用者修改密碼方式:

mysql -uroot -e "set password=password(『123』);"

mysql -uroot -p123.com -e "use mysql;update user set authentication_string=password('456') where user='root';"

update mysql.user set authentication_string=password("123") where user='root';

以上三種方法在mysql8.0以後版本中將不能使用,如果使用了將會導致在正確修改密碼是報如下錯誤:

mysql> alter user 'root'@'localhost' identified with mysql_native_password by '123';

error 1396 (hy000): operation alter user failed for 'root'@'localhost'

如遇上以上問題請使用update語句先清空authentication_string欄位,然後再修改密碼即可

update user set authentication_string='' where user='root';

alter user 'root'@'localhost' identified with mysql_native_password by '你的密碼';

mysql8.0後請使用alter修改使用者密碼,因為在mysql8.0以後的加密方式為caching_sha2_password,如果使用update修改密碼會給user表中root使用者的authentication_string欄位下設定newpassowrd值,當再使用alter user 'root'@'localhost' identified by 'newpassword'修改密碼時會一直報錯,必須清空後再修改,因為authentication_string欄位下只能是mysql加密後的43位字串密碼,其他的會報格式錯誤,所以在mysql8.0以後能修改密碼的方法只能是:alter user 'root'@'localhost' identified with mysql_native_password by '你的密碼';

MySQL 8 0修改密碼

最近系統公升級牽涉到mysql公升級,需要公升級到 mysql 8.0,涉及mysql使用者的密碼修改,特地記錄一下!mysql 8.0前修改密碼的官網連線 在mysql 8.0前,執行 set password password 新密碼 進行密碼修改,在mysql 8.0後,以上的方法使用root...

MySQL8 0 忘記密碼 修改密碼

mysql 5.7.9以後廢棄了password欄位和password 函式 authentication string 字段表示使用者密碼,而authentication string欄位下只能是mysql加密後的41位字串密碼。所以需要用一下方式來修改root密碼 alter user root...

MYSQL8 0修改簡單密碼

一 問題描述 1 在安裝mysql8.0時,修改臨時密碼,因密碼過於簡單 如 123456 不符合mysql密碼規範,會觸發乙個報錯資訊 error 1819 hy000 your password does not satisfy the current policy requirements。二...